lkml.org 
[lkml]   [2022]   [Jan]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 460/563] PCI: xgene: Fix IB window setup
    Date
    From: Rob Herring <robh@kernel.org>

    commit c7a75d07827a1f33d566e18e6098379cc2a0c2b2 upstream.

    Commit 6dce5aa59e0b ("PCI: xgene: Use inbound resources for setup")
    broke PCI support on XGene. The cause is the IB resources are now sorted
    in address order instead of being in DT dma-ranges order. The result is
    which inbound registers are used for each region are swapped. I don't
    know the details about this h/w, but it appears that IB region 0
    registers can't handle a size greater than 4GB. In any case, limiting
    the size for region 0 is enough to get back to the original assignment
    of dma-ranges to regions.

    Link: https://lore.kernel.org/all/CA+enf=v9rY_xnZML01oEgKLmvY1NGBUUhnSJaETmXtDtXfaczA@mail.gmail.com/
    Link: https://lore.kernel.org/r/20211129173637.303201-1-robh@kernel.org
    Fixes: 6dce5aa59e0b ("PCI: xgene: Use inbound resources for setup")
    Reported-by: Stéphane Graber <stgraber@ubuntu.com>
    Tested-by: Stéphane Graber <stgraber@ubuntu.com>
    Signed-off-by: Rob Herring <robh@kernel.org>
    Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    Reviewed-by: Krzysztof Wilczyński <kw@linux.com>
    Cc: stable@vger.kernel.org # v5.5+
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/pci/controller/pci-xgene.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/drivers/pci/controller/pci-xgene.c
    +++ b/drivers/pci/controller/pci-xgene.c
    @@ -467,7 +467,7 @@ static int xgene_pcie_select_ib_reg(u8 *
    return 1;
    }

    - if ((size > SZ_1K) && (size < SZ_1T) && !(*ib_reg_mask & (1 << 0))) {
    + if ((size > SZ_1K) && (size < SZ_4G) && !(*ib_reg_mask & (1 << 0))) {
    *ib_reg_mask |= (1 << 0);
    return 0;
    }

    \
     
     \ /
      Last update: 2022-01-25 04:40    [W:2.423 / U:1.260 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site