From 2dbc93c0b0e02b75faf5267c8e170706c2a2d10f Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 27 Nov 2014 20:54:18 +0000 Subject: [PATCH] cns3xxx: fix PCIe->PCI bridge access (fixes #18422) Signed-off-by: Felix Fietkau git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43414 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches-3.14/121-pcie_fix_bridge_access.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 target/linux/cns3xxx/patches-3.14/121-pcie_fix_bridge_access.patch diff --git a/target/linux/cns3xxx/patches-3.14/121-pcie_fix_bridge_access.patch b/target/linux/cns3xxx/patches-3.14/121-pcie_fix_bridge_access.patch new file mode 100644 index 0000000000..d3907bd7af --- /dev/null +++ b/target/linux/cns3xxx/patches-3.14/121-pcie_fix_bridge_access.patch @@ -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; + }