lkml.org 
[lkml]   [2021]   [Jul]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.13 721/800] staging: mt7621-dts: fix pci address for PCI memory range
    Date
    From: Sergio Paracuellos <sergio.paracuellos@gmail.com>

    [ Upstream commit 5b4f167ef3555ec4c334a8dc89c1b44bb2c6bff5 ]

    Driver code call 'devm_of_pci_get_host_bridge_resources'
    to get resources and properly fill 'bridge->windows' and
    'bridge->dma_ranges'. After parsing the ranges and store
    as resources, at the end it makes a call to pci function
    'pci_add_resource_offset' to set the offset for the
    memory resource. To calculate offset, resource start address
    subtracts pci address of the range. MT7621 does not need
    any offset for the memory resource. Moreover, setting an
    offset got into 'WARN_ON' calls from pci devices driver code.
    Until now memory range pci_addr was being '0x00000000' and
    res->start is '0x60000000' but becase pci controller driver
    was manually setting resources and adding them using pci function
    'pci_add_resource' where a zero is passed as offset, things
    was properly working. Since PCI_IOBASE is defined now for
    ralink we don't set nothing manually anymore so we have to
    properly fix PCI address for this range to make things work
    and the new pci address must be set to '0x60000000'. Doing
    in this way the subtract result obtain zero as offset
    and pci device driver code properly works.

    Fixes: d59578da2bb8 ("staging: mt7621-dts: add dts files")
    Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
    Link: https://lore.kernel.org/r/20210614100617.28753-4-sergio.paracuellos@gmail.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/staging/mt7621-dts/mt7621.dtsi | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/drivers/staging/mt7621-dts/mt7621.dtsi b/drivers/staging/mt7621-dts/mt7621.dtsi
    index f0c9ae757bcd..d6628e5f4f66 100644
    --- a/drivers/staging/mt7621-dts/mt7621.dtsi
    +++ b/drivers/staging/mt7621-dts/mt7621.dtsi
    @@ -498,7 +498,7 @@

    bus-range = <0 255>;
    ranges = <
    - 0x02000000 0 0x00000000 0x60000000 0 0x10000000 /* pci memory */
    + 0x02000000 0 0x60000000 0x60000000 0 0x10000000 /* pci memory */
    0x01000000 0 0x00000000 0x1e160000 0 0x00010000 /* io space */
    >;

    --
    2.30.2


    \
     
     \ /
      Last update: 2021-07-12 10:55    [W:4.019 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site