cns3xxx: fix PCIe->PCI bridge access (fixes #18422)

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43414 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Felix Fietkau 2014-11-27 20:54:18 +00:00
parent 5da2510705
commit 2dbc93c0b0
1 changed files with 11 additions and 0 deletions

View File

@ -0,0 +1,11 @@
--- a/arch/arm/mach-cns3xxx/pcie.c
+++ b/arch/arm/mach-cns3xxx/pcie.c
@@ -93,6 +93,8 @@ static void __iomem *cns3xxx_pci_cfg_bas
base = (void __iomem *)cnspci->cfg_bases[type].virtual;
offset = (devfn << 12) | (where & 0xffc);
+ if (busno > 1)
+ offset += busno << 20;
return base + offset;
}