aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm47xx/patches-4.1/031-05-MIPS-BCM47xx-Read-board-info-for-all-bcma-buses.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm47xx/patches-4.1/031-05-MIPS-BCM47xx-Read-board-info-for-all-bcma-buses.patch')
-rw-r--r--target/linux/brcm47xx/patches-4.1/031-05-MIPS-BCM47xx-Read-board-info-for-all-bcma-buses.patch132
1 files changed, 0 insertions, 132 deletions
diff --git a/target/linux/brcm47xx/patches-4.1/031-05-MIPS-BCM47xx-Read-board-info-for-all-bcma-buses.patch b/target/linux/brcm47xx/patches-4.1/031-05-MIPS-BCM47xx-Read-board-info-for-all-bcma-buses.patch
deleted file mode 100644
index 314a6c4904..0000000000
--- a/target/linux/brcm47xx/patches-4.1/031-05-MIPS-BCM47xx-Read-board-info-for-all-bcma-buses.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From 12e1ab54dcd414c3579cfd26be9d9c9e1cab92ad Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
-Date: Tue, 12 May 2015 13:05:18 +0200
-Subject: [PATCH] MIPS: BCM47xx: Read board info for all bcma buses
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Extra bcma buses may be totally different models, see following dump:
-boardtype=0x0646
-pci/1/1/boardtype=0x0545
-pci/2/1/boardtype=0x62b
-We need to detect them properly to allow drivers apply some board
-specific hacks.
-
-[ralf@linux-mips.org: folded in Rafal's fix.]
-
-Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
-Cc: linux-mips@linux-mips.org
-Cc: Hauke Mehrtens <hauke@hauke-m.de>
-Patchwork: https://patchwork.linux-mips.org/patch/10028/
-Patchwork: https://patchwork.linux-mips.org/patch/10048/
-Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
----
- arch/mips/bcm47xx/setup.c | 3 --
- arch/mips/bcm47xx/sprom.c | 44 ++++++++++++++--------------
- arch/mips/include/asm/mach-bcm47xx/bcm47xx.h | 4 ---
- 3 files changed, 22 insertions(+), 29 deletions(-)
-
---- a/arch/mips/bcm47xx/setup.c
-+++ b/arch/mips/bcm47xx/setup.c
-@@ -206,9 +206,6 @@ void __init bcm47xx_bus_setup(void)
- err = bcma_host_soc_init(&bcm47xx_bus.bcma);
- if (err)
- panic("Failed to initialize BCMA bus (err %d)", err);
--
-- bcm47xx_fill_bcma_boardinfo(&bcm47xx_bus.bcma.bus.boardinfo,
-- NULL);
- }
- #endif
-
---- a/arch/mips/bcm47xx/sprom.c
-+++ b/arch/mips/bcm47xx/sprom.c
-@@ -640,19 +640,6 @@ void bcm47xx_fill_ssb_boardinfo(struct s
- }
- #endif
-
--#ifdef CONFIG_BCM47XX_BCMA
--void bcm47xx_fill_bcma_boardinfo(struct bcma_boardinfo *boardinfo,
-- const char *prefix)
--{
-- nvram_read_u16(prefix, NULL, "boardvendor", &boardinfo->vendor, 0,
-- true);
-- if (!boardinfo->vendor)
-- boardinfo->vendor = SSB_BOARDVENDOR_BCM;
--
-- nvram_read_u16(prefix, NULL, "boardtype", &boardinfo->type, 0, true);
--}
--#endif
--
- #if defined(CONFIG_BCM47XX_SSB)
- static int bcm47xx_get_sprom_ssb(struct ssb_bus *bus, struct ssb_sprom *out)
- {
-@@ -707,33 +694,46 @@ static void bcm47xx_sprom_apply_prefix_a
-
- static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
- {
-- char prefix[10];
-+ struct bcma_boardinfo *binfo = &bus->boardinfo;
- struct bcma_device *core;
-+ char buf[10];
-+ char *prefix;
-+ bool fallback = false;
-
- switch (bus->hosttype) {
- case BCMA_HOSTTYPE_PCI:
- memset(out, 0, sizeof(struct ssb_sprom));
-- snprintf(prefix, sizeof(prefix), "pci/%u/%u/",
-+ snprintf(buf, sizeof(buf), "pci/%u/%u/",
- bus->host_pci->bus->number + 1,
- PCI_SLOT(bus->host_pci->devfn));
-- bcm47xx_sprom_apply_prefix_alias(prefix, sizeof(prefix));
-- bcm47xx_fill_sprom(out, prefix, false);
-- return 0;
-+ bcm47xx_sprom_apply_prefix_alias(buf, sizeof(buf));
-+ prefix = buf;
-+ break;
- case BCMA_HOSTTYPE_SOC:
- memset(out, 0, sizeof(struct ssb_sprom));
- core = bcma_find_core(bus, BCMA_CORE_80211);
- if (core) {
-- snprintf(prefix, sizeof(prefix), "sb/%u/",
-+ snprintf(buf, sizeof(buf), "sb/%u/",
- core->core_index);
-- bcm47xx_fill_sprom(out, prefix, true);
-+ prefix = buf;
-+ fallback = true;
- } else {
-- bcm47xx_fill_sprom(out, NULL, false);
-+ prefix = NULL;
- }
-- return 0;
-+ break;
- default:
- pr_warn("Unable to fill SPROM for given bustype.\n");
- return -EINVAL;
- }
-+
-+ nvram_read_u16(prefix, NULL, "boardvendor", &binfo->vendor, 0, true);
-+ if (!binfo->vendor)
-+ binfo->vendor = SSB_BOARDVENDOR_BCM;
-+ nvram_read_u16(prefix, NULL, "boardtype", &binfo->type, 0, true);
-+
-+ bcm47xx_fill_sprom(out, prefix, fallback);
-+
-+ return 0;
- }
- #endif
-
---- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
-+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
-@@ -52,10 +52,6 @@ void bcm47xx_fill_sprom(struct ssb_sprom
- void bcm47xx_fill_ssb_boardinfo(struct ssb_boardinfo *boardinfo,
- const char *prefix);
- #endif
--#ifdef CONFIG_BCM47XX_BCMA
--void bcm47xx_fill_bcma_boardinfo(struct bcma_boardinfo *boardinfo,
-- const char *prefix);
--#endif
-
- void bcm47xx_set_system_type(u16 chip_id);
-