From b4a01fc85436d64a056f8d767aeda1471dca8b0d Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Mon, 11 Nov 2013 00:08:09 +0000 Subject: [PATCH] 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 SVN-Revision: 38713 --- .../patches-3.10/025-bcma_backport.patch | 23 +++++++++++++++++- .../patches-3.12/025-bcma_backport.patch | 24 +++++++++++++++++++ 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 target/linux/generic/patches-3.12/025-bcma_backport.patch diff --git a/target/linux/generic/patches-3.10/025-bcma_backport.patch b/target/linux/generic/patches-3.10/025-bcma_backport.patch index 7349fb2e32e..853d524e129 100644 --- a/target/linux/generic/patches-3.10/025-bcma_backport.patch +++ b/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) }, 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 index 00000000000..9fc946c60c9 --- /dev/null +++ b/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) }, -- 2.30.2