aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm47xx/patches-2.6.23/601-mips-remove-pci-collision-check.patch
diff options
context:
space:
mode:
authorMichael Büsch <mb@bu3sch.de>2008-02-16 17:09:50 +0000
committerMichael Büsch <mb@bu3sch.de>2008-02-16 17:09:50 +0000
commitfa657fadc0aff63b8ae1d5f0e640716a8144ad8d (patch)
treebee82d4b08f24d265acd069b88c21c0880e9ff7a /target/linux/brcm47xx/patches-2.6.23/601-mips-remove-pci-collision-check.patch
parent7aa8523f3ec3a4e8de34785b036d1513c89663a1 (diff)
downloadupstream-fa657fadc0aff63b8ae1d5f0e640716a8144ad8d.tar.gz
upstream-fa657fadc0aff63b8ae1d5f0e640716a8144ad8d.tar.bz2
upstream-fa657fadc0aff63b8ae1d5f0e640716a8144ad8d.zip
Fix support for PCI devices behind a SSB->PCI bridge.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10468 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm47xx/patches-2.6.23/601-mips-remove-pci-collision-check.patch')
-rw-r--r--target/linux/brcm47xx/patches-2.6.23/601-mips-remove-pci-collision-check.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/patches-2.6.23/601-mips-remove-pci-collision-check.patch b/target/linux/brcm47xx/patches-2.6.23/601-mips-remove-pci-collision-check.patch
new file mode 100644
index 0000000000..8ab28a75e2
--- /dev/null
+++ b/target/linux/brcm47xx/patches-2.6.23/601-mips-remove-pci-collision-check.patch
@@ -0,0 +1,21 @@
+The SSB pcicore driver does create some MMIO resource collisions.
+However, the pcicore PCI-fixup routine fixes these collisions afterwards.
+Remove this sanity check for now until we find a better solution.
+--mb
+Index: linux-2.6.23.16/arch/mips/pci/pci.c
+===================================================================
+--- linux-2.6.23.16.orig/arch/mips/pci/pci.c 2008-02-16 17:55:20.000000000 +0100
++++ linux-2.6.23.16/arch/mips/pci/pci.c 2008-02-16 17:57:39.000000000 +0100
+@@ -177,10 +177,8 @@ static int pcibios_enable_resources(stru
+ continue;
+
+ r = &dev->resource[idx];
+- if (!r->start && r->end) {
+- printk(KERN_ERR "PCI: Device %s not available because of resource collisions\n", pci_name(dev));
+- return -EINVAL;
+- }
++ if (!r->start && r->end)
++ printk(KERN_WARNING "PCI: Device %s resource collisions detected. Ignoring...\n", pci_name(dev));
+ if (r->flags & IORESOURCE_IO)
+ cmd |= PCI_COMMAND_IO;
+ if (r->flags & IORESOURCE_MEM)