From f473f9519613f69fb49688ac479cdc01f4bb1b61 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Thu, 27 Nov 2014 20:54:18 +0000
Subject: [PATCH] cns3xxx: fix PCIe->PCI bridge access (fixes #18422)

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

SVN-Revision: 43414
---
 .../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;
+ }
-- 
2.30.2