summaryrefslogtreecommitdiff
path: root/target/linux/brcm47xx/patches-3.3/231-bcma_reorder_sprom_fill.patch
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2012-05-03 20:18:41 +0000
committerHauke Mehrtens <hauke@hauke-m.de>2012-05-03 20:18:41 +0000
commit22b2e3fbb9cc78d671e44f788a062031c97ffc6f (patch)
tree6395b1a6324793714e3d8d770a71cdc9362da4e1 /target/linux/brcm47xx/patches-3.3/231-bcma_reorder_sprom_fill.patch
parent8e9d914343967982a1a48e80000bbb09161e636c (diff)
downloadmtk-20170518-22b2e3fbb9cc78d671e44f788a062031c97ffc6f.zip
mtk-20170518-22b2e3fbb9cc78d671e44f788a062031c97ffc6f.tar.gz
mtk-20170518-22b2e3fbb9cc78d671e44f788a062031c97ffc6f.tar.bz2
brcm47xx: add support for kernel 3.3
SVN-Revision: 31573
Diffstat (limited to 'target/linux/brcm47xx/patches-3.3/231-bcma_reorder_sprom_fill.patch')
-rw-r--r--target/linux/brcm47xx/patches-3.3/231-bcma_reorder_sprom_fill.patch44
1 files changed, 44 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/patches-3.3/231-bcma_reorder_sprom_fill.patch b/target/linux/brcm47xx/patches-3.3/231-bcma_reorder_sprom_fill.patch
new file mode 100644
index 0000000..f4c2e26
--- /dev/null
+++ b/target/linux/brcm47xx/patches-3.3/231-bcma_reorder_sprom_fill.patch
@@ -0,0 +1,44 @@
+--- a/arch/mips/bcm47xx/setup.c
++++ b/arch/mips/bcm47xx/setup.c
+@@ -137,6 +137,7 @@ static int bcm47xx_get_sprom_ssb(struct
+ char prefix[10];
+
+ if (bus->bustype == SSB_BUSTYPE_PCI) {
++ memset(out, 0, sizeof(struct ssb_sprom));
+ snprintf(prefix, sizeof(prefix), "pci/%u/%u/",
+ bus->host_pci->bus->number + 1,
+ PCI_SLOT(bus->host_pci->devfn));
+@@ -165,6 +166,7 @@ static int bcm47xx_get_invariants(struct
+ if (nvram_getenv("boardrev", buf, sizeof(buf)) >= 0)
+ iv->boardinfo.rev = (u16)simple_strtoul(buf, NULL, 0);
+
++ memset(&iv->sprom, 0, sizeof(struct ssb_sprom));
+ bcm47xx_fill_sprom(&iv->sprom, NULL);
+
+ if (nvram_getenv("cardbus", buf, sizeof(buf)) >= 0)
+@@ -263,12 +265,14 @@ static int bcm47xx_get_sprom_bcma(struct
+
+ switch (bus->hosttype) {
+ case BCMA_HOSTTYPE_PCI:
++ memset(out, 0, sizeof(struct ssb_sprom));
+ snprintf(prefix, sizeof(prefix), "pci/%u/%u/",
+ bus->host_pci->bus->number + 1,
+ PCI_SLOT(bus->host_pci->devfn));
+ bcm47xx_fill_sprom(out, prefix);
+ return 0;
+ case BCMA_HOSTTYPE_SOC:
++ memset(out, 0, sizeof(struct ssb_sprom));
+ bcm47xx_fill_sprom_ethernet(out, NULL);
+ core = bcma_find_core(bus, BCMA_CORE_80211);
+ if (core) {
+--- a/arch/mips/bcm47xx/sprom.c
++++ b/arch/mips/bcm47xx/sprom.c
+@@ -555,8 +555,6 @@ void bcm47xx_fill_sprom_ethernet(struct
+
+ void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix)
+ {
+- memset(sprom, 0, sizeof(struct ssb_sprom));
+-
+ bcm47xx_fill_sprom_ethernet(sprom, prefix);
+
+ nvram_read_u8(prefix, NULL, "sromrev", &sprom->revision, 0);