kernel: bcma: detect pci ID 0x4313
authorHauke Mehrtens <hauke@hauke-m.de>
Mon, 11 Nov 2013 00:08:09 +0000 (00:08 +0000)
committerHauke Mehrtens <hauke@hauke-m.de>
Mon, 11 Nov 2013 00:08:09 +0000 (00:08 +0000)
This pci ID is used by sprom less BCM4313 devices.
This is a backport from the mainline kernel.

This is part of #13551.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 38713

target/linux/generic/patches-3.10/025-bcma_backport.patch
target/linux/generic/patches-3.12/025-bcma_backport.patch [new file with mode: 0644]

index 7349fb2e32e80409eb102d3afa0afea034d27955..853d524e12974ff519b85f4a4c7440bd5d0c1c00 100644 (file)
        switch (cc->capabilities & BCMA_CC_CAP_FLASHT) {
 --- a/drivers/bcma/host_pci.c
 +++ b/drivers/bcma/host_pci.c
-@@ -275,6 +275,7 @@ static DEFINE_PCI_DEVICE_TABLE(bcma_pci_
+@@ -188,8 +188,11 @@ static int bcma_host_pci_probe(struct pc
+               pci_write_config_dword(dev, 0x40, val & 0xffff00ff);
+       /* SSB needed additional powering up, do we have any AMBA PCI cards? */
+-      if (!pci_is_pcie(dev))
+-              bcma_err(bus, "PCI card detected, report problems.\n");
++      if (!pci_is_pcie(dev)) {
++              bcma_err(bus, "PCI card detected, they are not supported.\n");
++              err = -ENXIO;
++              goto err_pci_release_regions;
++      }
+       /* Map MMIO */
+       err = -ENOMEM;
+@@ -269,12 +272,14 @@ static SIMPLE_DEV_PM_OPS(bcma_pm_ops, bc
+ static DEFINE_PCI_DEVICE_TABLE(bcma_pci_bridge_tbl) = {
+       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x0576) },
++      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4313) },
+       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43224) },
+       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4331) },
+       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4353) },
        { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4357) },
        { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4358) },
        { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4359) },
diff --git a/target/linux/generic/patches-3.12/025-bcma_backport.patch b/target/linux/generic/patches-3.12/025-bcma_backport.patch
new file mode 100644 (file)
index 0000000..9fc946c
--- /dev/null
@@ -0,0 +1,24 @@
+--- a/drivers/bcma/host_pci.c
++++ b/drivers/bcma/host_pci.c
+@@ -188,8 +188,11 @@ static int bcma_host_pci_probe(struct pc
+               pci_write_config_dword(dev, 0x40, val & 0xffff00ff);
+       /* SSB needed additional powering up, do we have any AMBA PCI cards? */
+-      if (!pci_is_pcie(dev))
+-              bcma_err(bus, "PCI card detected, report problems.\n");
++      if (!pci_is_pcie(dev)) {
++              bcma_err(bus, "PCI card detected, they are not supported.\n");
++              err = -ENXIO;
++              goto err_pci_release_regions;
++      }
+       /* Map MMIO */
+       err = -ENOMEM;
+@@ -269,6 +272,7 @@ static SIMPLE_DEV_PM_OPS(bcma_pm_ops, bc
+ static DEFINE_PCI_DEVICE_TABLE(bcma_pci_bridge_tbl) = {
+       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x0576) },
++      { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4313) },
+       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43224) },
+       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4331) },
+       { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4353) },