aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorLarry Finger <Larry.Finger@lwfinger.net>2007-11-09 17:57:34 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 18:04:43 -0500
commit7797aa384870e3bb5bfd3b6a0eae61e7c7a4c993 (patch)
tree9d48b112dc1c973a17860fe39e82554724f7ed4b /drivers/net
parent95de2841aad971867851b59c0c5253ecc2e19832 (diff)
b43legacy: Convert to use of the new SPROM structure
The b43legacy driver is modified to use the new SPROM structure. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/b43legacy/leds.c8
-rw-r--r--drivers/net/wireless/b43legacy/main.c20
-rw-r--r--drivers/net/wireless/b43legacy/phy.c38
-rw-r--r--drivers/net/wireless/b43legacy/radio.c12
-rw-r--r--drivers/net/wireless/b43legacy/xmit.c2
5 files changed, 41 insertions, 39 deletions
diff --git a/drivers/net/wireless/b43legacy/leds.c b/drivers/net/wireless/b43legacy/leds.c
index b4319c99cf70..f0affb781002 100644
--- a/drivers/net/wireless/b43legacy/leds.c
+++ b/drivers/net/wireless/b43legacy/leds.c
@@ -189,10 +189,10 @@ void b43legacy_leds_init(struct b43legacy_wldev *dev)
189 enum b43legacy_led_behaviour behaviour; 189 enum b43legacy_led_behaviour behaviour;
190 bool activelow; 190 bool activelow;
191 191
192 sprom[0] = bus->sprom.r1.gpio0; 192 sprom[0] = bus->sprom.gpio0;
193 sprom[1] = bus->sprom.r1.gpio1; 193 sprom[1] = bus->sprom.gpio1;
194 sprom[2] = bus->sprom.r1.gpio2; 194 sprom[2] = bus->sprom.gpio2;
195 sprom[3] = bus->sprom.r1.gpio3; 195 sprom[3] = bus->sprom.gpio3;
196 196
197 for (i = 0; i < 4; i++) { 197 for (i = 0; i < 4; i++) {
198 if (sprom[i] == 0xFF) { 198 if (sprom[i] == 0xFF) {
diff --git a/drivers/net/wireless/b43legacy/main.c b/drivers/net/wireless/b43legacy/main.c
index e545f79ac747..1a8b67619077 100644
--- a/drivers/net/wireless/b43legacy/main.c
+++ b/drivers/net/wireless/b43legacy/main.c
@@ -1745,7 +1745,7 @@ static int b43legacy_gpio_init(struct b43legacy_wldev *dev)
1745 mask |= 0x0060; 1745 mask |= 0x0060;
1746 set |= 0x0060; 1746 set |= 0x0060;
1747 } 1747 }
1748 if (dev->dev->bus->sprom.r1.boardflags_lo & B43legacy_BFL_PACTRL) { 1748 if (dev->dev->bus->sprom.boardflags_lo & B43legacy_BFL_PACTRL) {
1749 b43legacy_write16(dev, B43legacy_MMIO_GPIO_MASK, 1749 b43legacy_write16(dev, B43legacy_MMIO_GPIO_MASK,
1750 b43legacy_read16(dev, 1750 b43legacy_read16(dev,
1751 B43legacy_MMIO_GPIO_MASK) 1751 B43legacy_MMIO_GPIO_MASK)
@@ -2122,7 +2122,7 @@ static void b43legacy_periodic_every120sec(struct b43legacy_wldev *dev)
2122static void b43legacy_periodic_every60sec(struct b43legacy_wldev *dev) 2122static void b43legacy_periodic_every60sec(struct b43legacy_wldev *dev)
2123{ 2123{
2124 b43legacy_phy_lo_mark_all_unused(dev); 2124 b43legacy_phy_lo_mark_all_unused(dev);
2125 if (dev->dev->bus->sprom.r1.boardflags_lo & B43legacy_BFL_RSSI) { 2125 if (dev->dev->bus->sprom.boardflags_lo & B43legacy_BFL_RSSI) {
2126 b43legacy_mac_suspend(dev); 2126 b43legacy_mac_suspend(dev);
2127 b43legacy_calc_nrssi_slope(dev); 2127 b43legacy_calc_nrssi_slope(dev);
2128 b43legacy_mac_enable(dev); 2128 b43legacy_mac_enable(dev);
@@ -3064,7 +3064,7 @@ static int b43legacy_wireless_core_init(struct b43legacy_wldev *dev)
3064 hf |= B43legacy_HF_SYMW; 3064 hf |= B43legacy_HF_SYMW;
3065 if (phy->rev == 1) 3065 if (phy->rev == 1)
3066 hf |= B43legacy_HF_GDCW; 3066 hf |= B43legacy_HF_GDCW;
3067 if (sprom->r1.boardflags_lo & B43legacy_BFL_PACTRL) 3067 if (sprom->boardflags_lo & B43legacy_BFL_PACTRL)
3068 hf |= B43legacy_HF_OFDMPABOOST; 3068 hf |= B43legacy_HF_OFDMPABOOST;
3069 } else if (phy->type == B43legacy_PHYTYPE_B) { 3069 } else if (phy->type == B43legacy_PHYTYPE_B) {
3070 hf |= B43legacy_HF_SYMW; 3070 hf |= B43legacy_HF_SYMW;
@@ -3556,12 +3556,12 @@ static void b43legacy_sprom_fixup(struct ssb_bus *bus)
3556 if (bus->boardinfo.vendor == PCI_VENDOR_ID_APPLE && 3556 if (bus->boardinfo.vendor == PCI_VENDOR_ID_APPLE &&
3557 bus->boardinfo.type == 0x4E && 3557 bus->boardinfo.type == 0x4E &&
3558 bus->boardinfo.rev > 0x40) 3558 bus->boardinfo.rev > 0x40)
3559 bus->sprom.r1.boardflags_lo |= B43legacy_BFL_PACTRL; 3559 bus->sprom.boardflags_lo |= B43legacy_BFL_PACTRL;
3560 3560
3561 /* Convert Antennagain values to Q5.2 */ 3561 /* Convert Antennagain values to Q5.2 */
3562 if (bus->sprom.r1.antenna_gain_bg == 0xFF) 3562 if (bus->sprom.antenna_gain_bg == 0xFF)
3563 bus->sprom.r1.antenna_gain_bg = 2; /* if unset, use 2 dBm */ 3563 bus->sprom.antenna_gain_bg = 2; /* if unset, use 2 dBm */
3564 bus->sprom.r1.antenna_gain_bg <<= 2; 3564 bus->sprom.antenna_gain_bg <<= 2;
3565} 3565}
3566 3566
3567static void b43legacy_wireless_exit(struct ssb_device *dev, 3567static void b43legacy_wireless_exit(struct ssb_device *dev,
@@ -3596,10 +3596,10 @@ static int b43legacy_wireless_init(struct ssb_device *dev)
3596 hw->max_noise = -110; 3596 hw->max_noise = -110;
3597 hw->queues = 1; /* FIXME: hardware has more queues */ 3597 hw->queues = 1; /* FIXME: hardware has more queues */
3598 SET_IEEE80211_DEV(hw, dev->dev); 3598 SET_IEEE80211_DEV(hw, dev->dev);
3599 if (is_valid_ether_addr(sprom->r1.et1mac)) 3599 if (is_valid_ether_addr(sprom->et1mac))
3600 SET_IEEE80211_PERM_ADDR(hw, sprom->r1.et1mac); 3600 SET_IEEE80211_PERM_ADDR(hw, sprom->et1mac);
3601 else 3601 else
3602 SET_IEEE80211_PERM_ADDR(hw, sprom->r1.il0mac); 3602 SET_IEEE80211_PERM_ADDR(hw, sprom->il0mac);
3603 3603
3604 /* Get and initialize struct b43legacy_wl */ 3604 /* Get and initialize struct b43legacy_wl */
3605 wl = hw_to_b43legacy_wl(hw); 3605 wl = hw_to_b43legacy_wl(hw);
diff --git a/drivers/net/wireless/b43legacy/phy.c b/drivers/net/wireless/b43legacy/phy.c
index d121fae53aa0..9d527e6d6ced 100644
--- a/drivers/net/wireless/b43legacy/phy.c
+++ b/drivers/net/wireless/b43legacy/phy.c
@@ -441,7 +441,7 @@ static void b43legacy_phy_inita(struct b43legacy_wldev *dev)
441 might_sleep(); 441 might_sleep();
442 442
443 b43legacy_phy_setupg(dev); 443 b43legacy_phy_setupg(dev);
444 if (dev->dev->bus->sprom.r1.boardflags_lo & B43legacy_BFL_PACTRL) 444 if (dev->dev->bus->sprom.boardflags_lo & B43legacy_BFL_PACTRL)
445 b43legacy_phy_write(dev, 0x046E, 0x03CF); 445 b43legacy_phy_write(dev, 0x046E, 0x03CF);
446} 446}
447 447
@@ -543,7 +543,7 @@ static void b43legacy_phy_initb4(struct b43legacy_wldev *dev)
543 if (phy->radio_ver == 0x2050) 543 if (phy->radio_ver == 0x2050)
544 b43legacy_phy_write(dev, 0x002A, 0x88C2); 544 b43legacy_phy_write(dev, 0x002A, 0x88C2);
545 b43legacy_radio_set_txpower_bg(dev, 0xFFFF, 0xFFFF, 0xFFFF); 545 b43legacy_radio_set_txpower_bg(dev, 0xFFFF, 0xFFFF, 0xFFFF);
546 if (dev->dev->bus->sprom.r1.boardflags_lo & B43legacy_BFL_RSSI) { 546 if (dev->dev->bus->sprom.boardflags_lo & B43legacy_BFL_RSSI) {
547 b43legacy_calc_nrssi_slope(dev); 547 b43legacy_calc_nrssi_slope(dev);
548 b43legacy_calc_nrssi_threshold(dev); 548 b43legacy_calc_nrssi_threshold(dev);
549 } 549 }
@@ -699,7 +699,7 @@ static void b43legacy_phy_initb6(struct b43legacy_wldev *dev)
699 b43legacy_radio_write16(dev, 0x005A, 0x0088); 699 b43legacy_radio_write16(dev, 0x005A, 0x0088);
700 b43legacy_radio_write16(dev, 0x005B, 0x006B); 700 b43legacy_radio_write16(dev, 0x005B, 0x006B);
701 b43legacy_radio_write16(dev, 0x005C, 0x000F); 701 b43legacy_radio_write16(dev, 0x005C, 0x000F);
702 if (dev->dev->bus->sprom.r1.boardflags_lo & 0x8000) { 702 if (dev->dev->bus->sprom.boardflags_lo & 0x8000) {
703 b43legacy_radio_write16(dev, 0x005D, 0x00FA); 703 b43legacy_radio_write16(dev, 0x005D, 0x00FA);
704 b43legacy_radio_write16(dev, 0x005E, 0x00D8); 704 b43legacy_radio_write16(dev, 0x005E, 0x00D8);
705 } else { 705 } else {
@@ -797,7 +797,7 @@ static void b43legacy_phy_initb6(struct b43legacy_wldev *dev)
797 b43legacy_phy_write(dev, 0x0062, 0x0007); 797 b43legacy_phy_write(dev, 0x0062, 0x0007);
798 b43legacy_radio_init2050(dev); 798 b43legacy_radio_init2050(dev);
799 b43legacy_phy_lo_g_measure(dev); 799 b43legacy_phy_lo_g_measure(dev);
800 if (dev->dev->bus->sprom.r1.boardflags_lo & 800 if (dev->dev->bus->sprom.boardflags_lo &
801 B43legacy_BFL_RSSI) { 801 B43legacy_BFL_RSSI) {
802 b43legacy_calc_nrssi_slope(dev); 802 b43legacy_calc_nrssi_slope(dev);
803 b43legacy_calc_nrssi_threshold(dev); 803 b43legacy_calc_nrssi_threshold(dev);
@@ -921,7 +921,7 @@ static void b43legacy_calc_loopback_gain(struct b43legacy_wldev *dev)
921 b43legacy_phy_read(dev, 0x0811) | 0x0100); 921 b43legacy_phy_read(dev, 0x0811) | 0x0100);
922 b43legacy_phy_write(dev, 0x0812, 922 b43legacy_phy_write(dev, 0x0812,
923 b43legacy_phy_read(dev, 0x0812) & 0xCFFF); 923 b43legacy_phy_read(dev, 0x0812) & 0xCFFF);
924 if (dev->dev->bus->sprom.r1.boardflags_lo & B43legacy_BFL_EXTLNA) { 924 if (dev->dev->bus->sprom.boardflags_lo & B43legacy_BFL_EXTLNA) {
925 if (phy->rev >= 7) { 925 if (phy->rev >= 7) {
926 b43legacy_phy_write(dev, 0x0811, 926 b43legacy_phy_write(dev, 0x0811,
927 b43legacy_phy_read(dev, 0x0811) 927 b43legacy_phy_read(dev, 0x0811)
@@ -1072,7 +1072,7 @@ static void b43legacy_phy_initg(struct b43legacy_wldev *dev)
1072 b43legacy_phy_write(dev, 0x0036, 1072 b43legacy_phy_write(dev, 0x0036,
1073 (b43legacy_phy_read(dev, 0x0036) 1073 (b43legacy_phy_read(dev, 0x0036)
1074 & 0x0FFF) | (phy->txctl2 << 12)); 1074 & 0x0FFF) | (phy->txctl2 << 12));
1075 if (dev->dev->bus->sprom.r1.boardflags_lo & 1075 if (dev->dev->bus->sprom.boardflags_lo &
1076 B43legacy_BFL_PACTRL) 1076 B43legacy_BFL_PACTRL)
1077 b43legacy_phy_write(dev, 0x002E, 0x8075); 1077 b43legacy_phy_write(dev, 0x002E, 0x8075);
1078 else 1078 else
@@ -1087,7 +1087,7 @@ static void b43legacy_phy_initg(struct b43legacy_wldev *dev)
1087 b43legacy_phy_write(dev, 0x080F, 0x8078); 1087 b43legacy_phy_write(dev, 0x080F, 0x8078);
1088 } 1088 }
1089 1089
1090 if (!(dev->dev->bus->sprom.r1.boardflags_lo & B43legacy_BFL_RSSI)) { 1090 if (!(dev->dev->bus->sprom.boardflags_lo & B43legacy_BFL_RSSI)) {
1091 /* The specs state to update the NRSSI LT with 1091 /* The specs state to update the NRSSI LT with
1092 * the value 0x7FFFFFFF here. I think that is some weird 1092 * the value 0x7FFFFFFF here. I think that is some weird
1093 * compiler optimization in the original driver. 1093 * compiler optimization in the original driver.
@@ -1838,9 +1838,9 @@ void b43legacy_phy_xmitpower(struct b43legacy_wldev *dev)
1838 1838
1839 estimated_pwr = b43legacy_phy_estimate_power_out(dev, average); 1839 estimated_pwr = b43legacy_phy_estimate_power_out(dev, average);
1840 1840
1841 max_pwr = dev->dev->bus->sprom.r1.maxpwr_bg; 1841 max_pwr = dev->dev->bus->sprom.maxpwr_bg;
1842 1842
1843 if ((dev->dev->bus->sprom.r1.boardflags_lo 1843 if ((dev->dev->bus->sprom.boardflags_lo
1844 & B43legacy_BFL_PACTRL) && 1844 & B43legacy_BFL_PACTRL) &&
1845 (phy->type == B43legacy_PHYTYPE_G)) 1845 (phy->type == B43legacy_PHYTYPE_G))
1846 max_pwr -= 0x3; 1846 max_pwr -= 0x3;
@@ -1848,7 +1848,7 @@ void b43legacy_phy_xmitpower(struct b43legacy_wldev *dev)
1848 b43legacywarn(dev->wl, "Invalid max-TX-power value in SPROM." 1848 b43legacywarn(dev->wl, "Invalid max-TX-power value in SPROM."
1849 "\n"); 1849 "\n");
1850 max_pwr = 74; /* fake it */ 1850 max_pwr = 74; /* fake it */
1851 dev->dev->bus->sprom.r1.maxpwr_bg = max_pwr; 1851 dev->dev->bus->sprom.maxpwr_bg = max_pwr;
1852 } 1852 }
1853 1853
1854 /* Use regulatory information to get the maximum power. 1854 /* Use regulatory information to get the maximum power.
@@ -1858,7 +1858,8 @@ void b43legacy_phy_xmitpower(struct b43legacy_wldev *dev)
1858 * and 1.5 dBm (a safety factor??). The result is in Q5.2 format 1858 * and 1.5 dBm (a safety factor??). The result is in Q5.2 format
1859 * which accounts for the factor of 4 */ 1859 * which accounts for the factor of 4 */
1860#define REG_MAX_PWR 20 1860#define REG_MAX_PWR 20
1861 max_pwr = min(REG_MAX_PWR * 4 - dev->dev->bus->sprom.r1.antenna_gain_bg 1861 max_pwr = min(REG_MAX_PWR * 4
1862 - dev->dev->bus->sprom.antenna_gain_bg
1862 - 0x6, max_pwr); 1863 - 0x6, max_pwr);
1863 1864
1864 /* find the desired power in Q5.2 - power_level is in dBm 1865 /* find the desired power in Q5.2 - power_level is in dBm
@@ -1918,7 +1919,7 @@ void b43legacy_phy_xmitpower(struct b43legacy_wldev *dev)
1918 txpower = 3; 1919 txpower = 3;
1919 radio_attenuation += 2; 1920 radio_attenuation += 2;
1920 baseband_attenuation += 2; 1921 baseband_attenuation += 2;
1921 } else if (dev->dev->bus->sprom.r1.boardflags_lo 1922 } else if (dev->dev->bus->sprom.boardflags_lo
1922 & B43legacy_BFL_PACTRL) { 1923 & B43legacy_BFL_PACTRL) {
1923 baseband_attenuation += 4 * 1924 baseband_attenuation += 4 *
1924 (radio_attenuation - 2); 1925 (radio_attenuation - 2);
@@ -2000,9 +2001,9 @@ int b43legacy_phy_init_tssi2dbm_table(struct b43legacy_wldev *dev)
2000 2001
2001 B43legacy_WARN_ON(!(phy->type == B43legacy_PHYTYPE_B || 2002 B43legacy_WARN_ON(!(phy->type == B43legacy_PHYTYPE_B ||
2002 phy->type == B43legacy_PHYTYPE_G)); 2003 phy->type == B43legacy_PHYTYPE_G));
2003 pab0 = (s16)(dev->dev->bus->sprom.r1.pa0b0); 2004 pab0 = (s16)(dev->dev->bus->sprom.pa0b0);
2004 pab1 = (s16)(dev->dev->bus->sprom.r1.pa0b1); 2005 pab1 = (s16)(dev->dev->bus->sprom.pa0b1);
2005 pab2 = (s16)(dev->dev->bus->sprom.r1.pa0b2); 2006 pab2 = (s16)(dev->dev->bus->sprom.pa0b2);
2006 2007
2007 if ((dev->dev->bus->chip_id == 0x4301) && (phy->radio_ver != 0x2050)) { 2008 if ((dev->dev->bus->chip_id == 0x4301) && (phy->radio_ver != 0x2050)) {
2008 phy->idle_tssi = 0x34; 2009 phy->idle_tssi = 0x34;
@@ -2013,9 +2014,10 @@ int b43legacy_phy_init_tssi2dbm_table(struct b43legacy_wldev *dev)
2013 if (pab0 != 0 && pab1 != 0 && pab2 != 0 && 2014 if (pab0 != 0 && pab1 != 0 && pab2 != 0 &&
2014 pab0 != -1 && pab1 != -1 && pab2 != -1) { 2015 pab0 != -1 && pab1 != -1 && pab2 != -1) {
2015 /* The pabX values are set in SPROM. Use them. */ 2016 /* The pabX values are set in SPROM. Use them. */
2016 if ((s8)dev->dev->bus->sprom.r1.itssi_bg != 0 && 2017 if ((s8)dev->dev->bus->sprom.itssi_bg != 0 &&
2017 (s8)dev->dev->bus->sprom.r1.itssi_bg != -1) 2018 (s8)dev->dev->bus->sprom.itssi_bg != -1)
2018 phy->idle_tssi = (s8)(dev->dev->bus->sprom.r1.itssi_bg); 2019 phy->idle_tssi = (s8)(dev->dev->bus->sprom.
2020 itssi_bg);
2019 else 2021 else
2020 phy->idle_tssi = 62; 2022 phy->idle_tssi = 62;
2021 dyn_tssi2dbm = kmalloc(64, GFP_KERNEL); 2023 dyn_tssi2dbm = kmalloc(64, GFP_KERNEL);
diff --git a/drivers/net/wireless/b43legacy/radio.c b/drivers/net/wireless/b43legacy/radio.c
index ccdb6fc8932b..1a72eb0f8f66 100644
--- a/drivers/net/wireless/b43legacy/radio.c
+++ b/drivers/net/wireless/b43legacy/radio.c
@@ -827,7 +827,7 @@ void b43legacy_calc_nrssi_threshold(struct b43legacy_wldev *dev)
827 case B43legacy_PHYTYPE_B: { 827 case B43legacy_PHYTYPE_B: {
828 if (phy->radio_ver != 0x2050) 828 if (phy->radio_ver != 0x2050)
829 return; 829 return;
830 if (!(dev->dev->bus->sprom.r1.boardflags_lo & 830 if (!(dev->dev->bus->sprom.boardflags_lo &
831 B43legacy_BFL_RSSI)) 831 B43legacy_BFL_RSSI))
832 return; 832 return;
833 833
@@ -857,7 +857,7 @@ void b43legacy_calc_nrssi_threshold(struct b43legacy_wldev *dev)
857 } 857 }
858 case B43legacy_PHYTYPE_G: 858 case B43legacy_PHYTYPE_G:
859 if (!phy->gmode || 859 if (!phy->gmode ||
860 !(dev->dev->bus->sprom.r1.boardflags_lo & 860 !(dev->dev->bus->sprom.boardflags_lo &
861 B43legacy_BFL_RSSI)) { 861 B43legacy_BFL_RSSI)) {
862 tmp16 = b43legacy_nrssi_hw_read(dev, 0x20); 862 tmp16 = b43legacy_nrssi_hw_read(dev, 0x20);
863 if (tmp16 >= 0x20) 863 if (tmp16 >= 0x20)
@@ -1406,7 +1406,7 @@ static u16 b43legacy_get_812_value(struct b43legacy_wldev *dev, u8 lpd)
1406 if (!phy->gmode) 1406 if (!phy->gmode)
1407 return 0; 1407 return 0;
1408 if (!has_loopback_gain(phy)) { 1408 if (!has_loopback_gain(phy)) {
1409 if (phy->rev < 7 || !(dev->dev->bus->sprom.r1.boardflags_lo 1409 if (phy->rev < 7 || !(dev->dev->bus->sprom.boardflags_lo
1410 & B43legacy_BFL_EXTLNA)) { 1410 & B43legacy_BFL_EXTLNA)) {
1411 switch (lpd) { 1411 switch (lpd) {
1412 case LPD(0, 1, 1): 1412 case LPD(0, 1, 1):
@@ -1459,7 +1459,7 @@ static u16 b43legacy_get_812_value(struct b43legacy_wldev *dev, u8 lpd)
1459 } 1459 }
1460 1460
1461 loop_or = (loop << 8) | extern_lna_control; 1461 loop_or = (loop << 8) | extern_lna_control;
1462 if (phy->rev >= 7 && dev->dev->bus->sprom.r1.boardflags_lo 1462 if (phy->rev >= 7 && dev->dev->bus->sprom.boardflags_lo
1463 & B43legacy_BFL_EXTLNA) { 1463 & B43legacy_BFL_EXTLNA) {
1464 if (extern_lna_control) 1464 if (extern_lna_control)
1465 loop_or |= 0x8000; 1465 loop_or |= 0x8000;
@@ -1550,7 +1550,7 @@ u16 b43legacy_radio_init2050(struct b43legacy_wldev *dev)
1550 b43legacy_get_812_value(dev, 1550 b43legacy_get_812_value(dev,
1551 LPD(0, 1, 1))); 1551 LPD(0, 1, 1)));
1552 if (phy->rev < 7 || 1552 if (phy->rev < 7 ||
1553 !(dev->dev->bus->sprom.r1.boardflags_lo 1553 !(dev->dev->bus->sprom.boardflags_lo
1554 & B43legacy_BFL_EXTLNA)) 1554 & B43legacy_BFL_EXTLNA))
1555 b43legacy_phy_write(dev, 0x0811, 0x01B3); 1555 b43legacy_phy_write(dev, 0x0811, 0x01B3);
1556 else 1556 else
@@ -1786,7 +1786,7 @@ int b43legacy_radio_selectchannel(struct b43legacy_wldev *dev,
1786 channel2freq_bg(channel)); 1786 channel2freq_bg(channel));
1787 1787
1788 if (channel == 14) { 1788 if (channel == 14) {
1789 if (dev->dev->bus->sprom.r1.country_code == 5) /* JAPAN) */ 1789 if (dev->dev->bus->sprom.country_code == 5) /* JAPAN) */
1790 b43legacy_shm_write32(dev, B43legacy_SHM_SHARED, 1790 b43legacy_shm_write32(dev, B43legacy_SHM_SHARED,
1791 B43legacy_UCODEFLAGS_OFFSET, 1791 B43legacy_UCODEFLAGS_OFFSET,
1792 b43legacy_shm_read32(dev, 1792 b43legacy_shm_read32(dev,
diff --git a/drivers/net/wireless/b43legacy/xmit.c b/drivers/net/wireless/b43legacy/xmit.c
index 23496f45a4d7..c24399dc0ede 100644
--- a/drivers/net/wireless/b43legacy/xmit.c
+++ b/drivers/net/wireless/b43legacy/xmit.c
@@ -379,7 +379,7 @@ static s8 b43legacy_rssi_postprocess(struct b43legacy_wldev *dev,
379 else 379 else
380 tmp -= 3; 380 tmp -= 3;
381 } else { 381 } else {
382 if (dev->dev->bus->sprom.r1.boardflags_lo 382 if (dev->dev->bus->sprom.boardflags_lo
383 & B43legacy_BFL_RSSI) { 383 & B43legacy_BFL_RSSI) {
384 if (in_rssi > 63) 384 if (in_rssi > 63)
385 in_rssi = 63; 385 in_rssi = 63;