aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm47xx
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@openwrt.org>2010-07-25 16:10:51 +0000
committerHauke Mehrtens <hauke@openwrt.org>2010-07-25 16:10:51 +0000
commit66c0bfc0f2c82ce3c8fc6bf34cdbb15e56c916b8 (patch)
treeb0fdab377a682c14dabb5f404b29fed93ddd8805 /target/linux/brcm47xx
parent09b2a7e5da9c239987dcfa4c05f1d8087393dba6 (diff)
downloadupstream-66c0bfc0f2c82ce3c8fc6bf34cdbb15e56c916b8.tar.gz
upstream-66c0bfc0f2c82ce3c8fc6bf34cdbb15e56c916b8.tar.bz2
upstream-66c0bfc0f2c82ce3c8fc6bf34cdbb15e56c916b8.zip
brcm47xx: now hopfully realy commit the right things from r22385
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22388 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm47xx')
-rw-r--r--target/linux/brcm47xx/patches-2.6.34/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch123
-rw-r--r--target/linux/brcm47xx/patches-2.6.35/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch123
2 files changed, 124 insertions, 122 deletions
diff --git a/target/linux/brcm47xx/patches-2.6.34/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch b/target/linux/brcm47xx/patches-2.6.34/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch
index f3213d6f63..426e3c35c4 100644
--- a/target/linux/brcm47xx/patches-2.6.34/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch
+++ b/target/linux/brcm47xx/patches-2.6.34/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch
@@ -1,7 +1,7 @@
-From f382c623892dad1c6a9ebc0e12d01fd45ee50db8 Mon Sep 17 00:00:00 2001
+From fbdfca0b2489ad94c6a3bc90b47adfd5c8179a89 Mon Sep 17 00:00:00 2001
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Sun, 18 Jul 2010 13:34:32 +0200
-Subject: [PATCH 2/5] MIPS: BCM47xx: Fill more values into ssb sprom
+Subject: [PATCH 2/5] MIPS: BCM47xx: Fill values for b43 into ssb sprom
Most of the values are stored in the nvram and not in the CFE. At first
the nvram should be read and if there is no value it should look into
@@ -10,15 +10,20 @@ drivers needs them.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
- arch/mips/bcm47xx/setup.c | 130 +++++++++++++++++++++++++++++++++-----------
- 1 files changed, 97 insertions(+), 33 deletions(-)
+ arch/mips/bcm47xx/setup.c | 131 +++++++++++++++++++++++++++++++++-----------
+ 1 files changed, 98 insertions(+), 33 deletions(-)
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
-@@ -74,6 +74,94 @@ static void str2eaddr(char *str, char *d
+@@ -74,6 +74,95 @@ static void str2eaddr(char *str, char *d
}
}
++#define READ_FROM_NVRAM(_outvar, name, buf) \
++ if (nvram_getenv(name, buf, sizeof(buf)) >= 0 || \
++ cfe_getenv(name, buf, sizeof(buf)) >= 0) \
++ sprom->_outvar = simple_strtoul(buf, NULL, 0);
++
+static void bcm47xx_fill_sprom(struct ssb_sprom *sprom)
+{
+ char buf[100];
@@ -26,7 +31,8 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
+
+ memset(sprom, 0, sizeof(struct ssb_sprom));
+
-+ sprom->revision = 3;
++ sprom->revision = 1; /* Fallback: Old hardware does not define this. */
++ READ_FROM_NVRAM(revision, "sromrev", buf);
+ if (nvram_getenv("il0macaddr", buf, sizeof(buf)) >= 0 ||
+ cfe_getenv("il0macaddr", buf, sizeof(buf)) >= 0)
+ str2eaddr(buf, sprom->il0mac);
@@ -36,60 +42,55 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
+ if (nvram_getenv("et1macaddr", buf, sizeof(buf)) >= 0 ||
+ cfe_getenv("et1macaddr", buf, sizeof(buf)) >= 0)
+ str2eaddr(buf, sprom->et1mac);
-+ if (nvram_getenv("et0phyaddr", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("et0phyaddr", buf, sizeof(buf)) >= 0)
-+ sprom->et0phyaddr = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("et1phyaddr", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("et1phyaddr", buf, sizeof(buf)) >= 0)
-+ sprom->et1phyaddr = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("et0mdcport", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("et0mdcport", buf, sizeof(buf)) >= 0)
-+ sprom->et0mdcport = !!simple_strtoul(buf, NULL, 10);
-+ if (nvram_getenv("et1mdcport", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("et1mdcport", buf, sizeof(buf)) >= 0)
-+ sprom->et1mdcport = !!simple_strtoul(buf, NULL, 10);
-+ if (nvram_getenv("pa0b0", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0b0", buf, sizeof(buf)) >= 0)
-+ sprom->pa0b0 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa0b1", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0b1", buf, sizeof(buf)) >= 0)
-+ sprom->pa0b1 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa0b2", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0b2", buf, sizeof(buf)) >= 0)
-+ sprom->pa0b2 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1b0", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1b0", buf, sizeof(buf)) >= 0)
-+ sprom->pa1b0 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1b1", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1b1", buf, sizeof(buf)) >= 0)
-+ sprom->pa1b1 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1b2", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1b2", buf, sizeof(buf)) >= 0)
-+ sprom->pa1b2 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("wl0gpio0", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("wl0gpio0", buf, sizeof(buf)) >= 0)
-+ sprom->gpio0 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("wl0gpio1", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("wl0gpio1", buf, sizeof(buf)) >= 0)
-+ sprom->gpio1 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("wl0gpio2", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("wl0gpio2", buf, sizeof(buf)) >= 0)
-+ sprom->gpio2 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("wl0gpio3", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("wl0gpio3", buf, sizeof(buf)) >= 0)
-+ sprom->gpio3 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa0maxpwr", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0maxpwr", buf, sizeof(buf)) >= 0)
-+ sprom->maxpwr_bg = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1maxpwr", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1maxpwr", buf, sizeof(buf)) >= 0)
-+ sprom->maxpwr_a = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa0itssit", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0itssit", buf, sizeof(buf)) >= 0)
-+ sprom->itssi_bg = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1itssit", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1itssit", buf, sizeof(buf)) >= 0)
-+ sprom->itssi_a = simple_strtoul(buf, NULL, 0);
++ READ_FROM_NVRAM(et0phyaddr, "et0phyaddr", buf);
++ READ_FROM_NVRAM(et1phyaddr, "et1phyaddr", buf);
++ READ_FROM_NVRAM(et0mdcport, "et0mdcport", buf);
++ READ_FROM_NVRAM(et1mdcport, "et1mdcport", buf);
++ READ_FROM_NVRAM(board_rev, "boardrev", buf);
++ READ_FROM_NVRAM(country_code, "ccode", buf);
++ READ_FROM_NVRAM(ant_available_a, "aa5g", buf);
++ READ_FROM_NVRAM(ant_available_bg, "aa2g", buf);
++ READ_FROM_NVRAM(pa0b0, "pa0b0", buf);
++ READ_FROM_NVRAM(pa0b1, "pa0b1", buf);
++ READ_FROM_NVRAM(pa0b2, "pa0b2", buf);
++ READ_FROM_NVRAM(pa1b0, "pa1b0", buf);
++ READ_FROM_NVRAM(pa1b1, "pa1b1", buf);
++ READ_FROM_NVRAM(pa1b2, "pa1b2", buf);
++ READ_FROM_NVRAM(pa1lob0, "pa1lob0", buf);
++ READ_FROM_NVRAM(pa1lob2, "pa1lob1", buf);
++ READ_FROM_NVRAM(pa1lob1, "pa1lob2", buf);
++ READ_FROM_NVRAM(pa1hib0, "pa1hib0", buf);
++ READ_FROM_NVRAM(pa1hib2, "pa1hib1", buf);
++ READ_FROM_NVRAM(pa1hib1, "pa1hib2", buf);
++ READ_FROM_NVRAM(gpio0, "wl0gpio0", buf);
++ READ_FROM_NVRAM(gpio1, "wl0gpio1", buf);
++ READ_FROM_NVRAM(gpio2, "wl0gpio2", buf);
++ READ_FROM_NVRAM(gpio3, "wl0gpio3", buf);
++ READ_FROM_NVRAM(maxpwr_bg, "pa0maxpwr", buf);
++ READ_FROM_NVRAM(maxpwr_al, "pa1lomaxpwr", buf);
++ READ_FROM_NVRAM(maxpwr_a, "pa1maxpwr", buf);
++ READ_FROM_NVRAM(maxpwr_ah, "pa1himaxpwr", buf);
++ READ_FROM_NVRAM(itssi_a, "pa1itssit", buf);
++ READ_FROM_NVRAM(itssi_bg, "pa0itssit", buf);
++ READ_FROM_NVRAM(tri2g, "tri2g", buf);
++ READ_FROM_NVRAM(tri5gl, "tri5gl", buf);
++ READ_FROM_NVRAM(tri5g, "tri5g", buf);
++ READ_FROM_NVRAM(tri5gh, "tri5gh", buf);
++ READ_FROM_NVRAM(rxpo2g, "rxpo2g", buf);
++ READ_FROM_NVRAM(rxpo5g, "rxpo5g", buf);
++ READ_FROM_NVRAM(rssisav2g, "rssisav2g", buf);
++ READ_FROM_NVRAM(rssismc2g, "rssismc2g", buf);
++ READ_FROM_NVRAM(rssismf2g, "rssismf2g", buf);
++ READ_FROM_NVRAM(bxa2g, "bxa2g", buf);
++ READ_FROM_NVRAM(rssisav5g, "rssisav5g", buf);
++ READ_FROM_NVRAM(rssismc5g, "rssismc5g", buf);
++ READ_FROM_NVRAM(rssismf5g, "rssismf5g", buf);
++ READ_FROM_NVRAM(bxa5g, "bxa5g", buf);
++ READ_FROM_NVRAM(cck2gpo, "cck2gpo", buf);
++ READ_FROM_NVRAM(ofdm2gpo, "ofdm2gpo", buf);
++ READ_FROM_NVRAM(ofdm5glpo, "ofdm5glpo", buf);
++ READ_FROM_NVRAM(ofdm5gpo, "ofdm5gpo", buf);
++ READ_FROM_NVRAM(ofdm5ghpo, "ofdm5ghpo", buf);
+
+ if (nvram_getenv("boardflags", buf, sizeof(buf)) >= 0 ||
+ cfe_getenv("boardflags", buf, sizeof(buf)) >= 0)
@@ -110,7 +111,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
static int bcm47xx_get_invariants(struct ssb_bus *bus,
struct ssb_init_invariants *iv)
{
-@@ -82,43 +170,19 @@ static int bcm47xx_get_invariants(struct
+@@ -82,43 +171,19 @@ static int bcm47xx_get_invariants(struct
/* Fill boardinfo structure */
memset(&(iv->boardinfo), 0 , sizeof(struct ssb_boardinfo));
diff --git a/target/linux/brcm47xx/patches-2.6.35/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch b/target/linux/brcm47xx/patches-2.6.35/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch
index f3213d6f63..426e3c35c4 100644
--- a/target/linux/brcm47xx/patches-2.6.35/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch
+++ b/target/linux/brcm47xx/patches-2.6.35/012-MIPS-BCM47xx-Fill-values-for-b43-into-ssb-sprom.patch
@@ -1,7 +1,7 @@
-From f382c623892dad1c6a9ebc0e12d01fd45ee50db8 Mon Sep 17 00:00:00 2001
+From fbdfca0b2489ad94c6a3bc90b47adfd5c8179a89 Mon Sep 17 00:00:00 2001
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Sun, 18 Jul 2010 13:34:32 +0200
-Subject: [PATCH 2/5] MIPS: BCM47xx: Fill more values into ssb sprom
+Subject: [PATCH 2/5] MIPS: BCM47xx: Fill values for b43 into ssb sprom
Most of the values are stored in the nvram and not in the CFE. At first
the nvram should be read and if there is no value it should look into
@@ -10,15 +10,20 @@ drivers needs them.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
- arch/mips/bcm47xx/setup.c | 130 +++++++++++++++++++++++++++++++++-----------
- 1 files changed, 97 insertions(+), 33 deletions(-)
+ arch/mips/bcm47xx/setup.c | 131 +++++++++++++++++++++++++++++++++-----------
+ 1 files changed, 98 insertions(+), 33 deletions(-)
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
-@@ -74,6 +74,94 @@ static void str2eaddr(char *str, char *d
+@@ -74,6 +74,95 @@ static void str2eaddr(char *str, char *d
}
}
++#define READ_FROM_NVRAM(_outvar, name, buf) \
++ if (nvram_getenv(name, buf, sizeof(buf)) >= 0 || \
++ cfe_getenv(name, buf, sizeof(buf)) >= 0) \
++ sprom->_outvar = simple_strtoul(buf, NULL, 0);
++
+static void bcm47xx_fill_sprom(struct ssb_sprom *sprom)
+{
+ char buf[100];
@@ -26,7 +31,8 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
+
+ memset(sprom, 0, sizeof(struct ssb_sprom));
+
-+ sprom->revision = 3;
++ sprom->revision = 1; /* Fallback: Old hardware does not define this. */
++ READ_FROM_NVRAM(revision, "sromrev", buf);
+ if (nvram_getenv("il0macaddr", buf, sizeof(buf)) >= 0 ||
+ cfe_getenv("il0macaddr", buf, sizeof(buf)) >= 0)
+ str2eaddr(buf, sprom->il0mac);
@@ -36,60 +42,55 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
+ if (nvram_getenv("et1macaddr", buf, sizeof(buf)) >= 0 ||
+ cfe_getenv("et1macaddr", buf, sizeof(buf)) >= 0)
+ str2eaddr(buf, sprom->et1mac);
-+ if (nvram_getenv("et0phyaddr", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("et0phyaddr", buf, sizeof(buf)) >= 0)
-+ sprom->et0phyaddr = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("et1phyaddr", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("et1phyaddr", buf, sizeof(buf)) >= 0)
-+ sprom->et1phyaddr = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("et0mdcport", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("et0mdcport", buf, sizeof(buf)) >= 0)
-+ sprom->et0mdcport = !!simple_strtoul(buf, NULL, 10);
-+ if (nvram_getenv("et1mdcport", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("et1mdcport", buf, sizeof(buf)) >= 0)
-+ sprom->et1mdcport = !!simple_strtoul(buf, NULL, 10);
-+ if (nvram_getenv("pa0b0", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0b0", buf, sizeof(buf)) >= 0)
-+ sprom->pa0b0 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa0b1", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0b1", buf, sizeof(buf)) >= 0)
-+ sprom->pa0b1 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa0b2", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0b2", buf, sizeof(buf)) >= 0)
-+ sprom->pa0b2 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1b0", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1b0", buf, sizeof(buf)) >= 0)
-+ sprom->pa1b0 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1b1", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1b1", buf, sizeof(buf)) >= 0)
-+ sprom->pa1b1 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1b2", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1b2", buf, sizeof(buf)) >= 0)
-+ sprom->pa1b2 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("wl0gpio0", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("wl0gpio0", buf, sizeof(buf)) >= 0)
-+ sprom->gpio0 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("wl0gpio1", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("wl0gpio1", buf, sizeof(buf)) >= 0)
-+ sprom->gpio1 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("wl0gpio2", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("wl0gpio2", buf, sizeof(buf)) >= 0)
-+ sprom->gpio2 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("wl0gpio3", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("wl0gpio3", buf, sizeof(buf)) >= 0)
-+ sprom->gpio3 = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa0maxpwr", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0maxpwr", buf, sizeof(buf)) >= 0)
-+ sprom->maxpwr_bg = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1maxpwr", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1maxpwr", buf, sizeof(buf)) >= 0)
-+ sprom->maxpwr_a = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa0itssit", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa0itssit", buf, sizeof(buf)) >= 0)
-+ sprom->itssi_bg = simple_strtoul(buf, NULL, 0);
-+ if (nvram_getenv("pa1itssit", buf, sizeof(buf)) >= 0 ||
-+ cfe_getenv("pa1itssit", buf, sizeof(buf)) >= 0)
-+ sprom->itssi_a = simple_strtoul(buf, NULL, 0);
++ READ_FROM_NVRAM(et0phyaddr, "et0phyaddr", buf);
++ READ_FROM_NVRAM(et1phyaddr, "et1phyaddr", buf);
++ READ_FROM_NVRAM(et0mdcport, "et0mdcport", buf);
++ READ_FROM_NVRAM(et1mdcport, "et1mdcport", buf);
++ READ_FROM_NVRAM(board_rev, "boardrev", buf);
++ READ_FROM_NVRAM(country_code, "ccode", buf);
++ READ_FROM_NVRAM(ant_available_a, "aa5g", buf);
++ READ_FROM_NVRAM(ant_available_bg, "aa2g", buf);
++ READ_FROM_NVRAM(pa0b0, "pa0b0", buf);
++ READ_FROM_NVRAM(pa0b1, "pa0b1", buf);
++ READ_FROM_NVRAM(pa0b2, "pa0b2", buf);
++ READ_FROM_NVRAM(pa1b0, "pa1b0", buf);
++ READ_FROM_NVRAM(pa1b1, "pa1b1", buf);
++ READ_FROM_NVRAM(pa1b2, "pa1b2", buf);
++ READ_FROM_NVRAM(pa1lob0, "pa1lob0", buf);
++ READ_FROM_NVRAM(pa1lob2, "pa1lob1", buf);
++ READ_FROM_NVRAM(pa1lob1, "pa1lob2", buf);
++ READ_FROM_NVRAM(pa1hib0, "pa1hib0", buf);
++ READ_FROM_NVRAM(pa1hib2, "pa1hib1", buf);
++ READ_FROM_NVRAM(pa1hib1, "pa1hib2", buf);
++ READ_FROM_NVRAM(gpio0, "wl0gpio0", buf);
++ READ_FROM_NVRAM(gpio1, "wl0gpio1", buf);
++ READ_FROM_NVRAM(gpio2, "wl0gpio2", buf);
++ READ_FROM_NVRAM(gpio3, "wl0gpio3", buf);
++ READ_FROM_NVRAM(maxpwr_bg, "pa0maxpwr", buf);
++ READ_FROM_NVRAM(maxpwr_al, "pa1lomaxpwr", buf);
++ READ_FROM_NVRAM(maxpwr_a, "pa1maxpwr", buf);
++ READ_FROM_NVRAM(maxpwr_ah, "pa1himaxpwr", buf);
++ READ_FROM_NVRAM(itssi_a, "pa1itssit", buf);
++ READ_FROM_NVRAM(itssi_bg, "pa0itssit", buf);
++ READ_FROM_NVRAM(tri2g, "tri2g", buf);
++ READ_FROM_NVRAM(tri5gl, "tri5gl", buf);
++ READ_FROM_NVRAM(tri5g, "tri5g", buf);
++ READ_FROM_NVRAM(tri5gh, "tri5gh", buf);
++ READ_FROM_NVRAM(rxpo2g, "rxpo2g", buf);
++ READ_FROM_NVRAM(rxpo5g, "rxpo5g", buf);
++ READ_FROM_NVRAM(rssisav2g, "rssisav2g", buf);
++ READ_FROM_NVRAM(rssismc2g, "rssismc2g", buf);
++ READ_FROM_NVRAM(rssismf2g, "rssismf2g", buf);
++ READ_FROM_NVRAM(bxa2g, "bxa2g", buf);
++ READ_FROM_NVRAM(rssisav5g, "rssisav5g", buf);
++ READ_FROM_NVRAM(rssismc5g, "rssismc5g", buf);
++ READ_FROM_NVRAM(rssismf5g, "rssismf5g", buf);
++ READ_FROM_NVRAM(bxa5g, "bxa5g", buf);
++ READ_FROM_NVRAM(cck2gpo, "cck2gpo", buf);
++ READ_FROM_NVRAM(ofdm2gpo, "ofdm2gpo", buf);
++ READ_FROM_NVRAM(ofdm5glpo, "ofdm5glpo", buf);
++ READ_FROM_NVRAM(ofdm5gpo, "ofdm5gpo", buf);
++ READ_FROM_NVRAM(ofdm5ghpo, "ofdm5ghpo", buf);
+
+ if (nvram_getenv("boardflags", buf, sizeof(buf)) >= 0 ||
+ cfe_getenv("boardflags", buf, sizeof(buf)) >= 0)
@@ -110,7 +111,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
static int bcm47xx_get_invariants(struct ssb_bus *bus,
struct ssb_init_invariants *iv)
{
-@@ -82,43 +170,19 @@ static int bcm47xx_get_invariants(struct
+@@ -82,43 +171,19 @@ static int bcm47xx_get_invariants(struct
/* Fill boardinfo structure */
memset(&(iv->boardinfo), 0 , sizeof(struct ssb_boardinfo));