Parcourir la source

kernel: bcma: detect pci ID 0x4313

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 <[email protected]>

SVN-Revision: 38713
Hauke Mehrtens il y a 12 ans
Parent
commit
b4a01fc854

+ 22 - 1
target/linux/generic/patches-3.10/025-bcma_backport.patch

@@ -297,7 +297,28 @@
  	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) },

+ 24 - 0
target/linux/generic/patches-3.12/025-bcma_backport.patch

@@ -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) },