diff options
Diffstat (limited to 'drivers/net/wireless/bcm43xx/bcm43xx_phy.c')
-rw-r--r-- | drivers/net/wireless/bcm43xx/bcm43xx_phy.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_phy.c b/drivers/net/wireless/bcm43xx/bcm43xx_phy.c index 054c64e462fb..4ab17a7f7e91 100644 --- a/drivers/net/wireless/bcm43xx/bcm43xx_phy.c +++ b/drivers/net/wireless/bcm43xx/bcm43xx_phy.c | |||
@@ -1057,9 +1057,14 @@ static void bcm43xx_phy_initg(struct bcm43xx_private *bcm) | |||
1057 | bcm43xx_phy_write(bcm, 0x002F, 0x0202); | 1057 | bcm43xx_phy_write(bcm, 0x002F, 0x0202); |
1058 | } | 1058 | } |
1059 | 1059 | ||
1060 | if ((bcm->sprom.boardflags & BCM43xx_BFL_RSSI) == 0) { | 1060 | if (!(bcm->sprom.boardflags & BCM43xx_BFL_RSSI)) { |
1061 | FIXME();//FIXME: 0x7FFFFFFF should be 16-bit ! | 1061 | /* The specs state to update the NRSSI LT with |
1062 | bcm43xx_nrssi_hw_update(bcm, (u16)0x7FFFFFFF); | 1062 | * the value 0x7FFFFFFF here. I think that is some weird |
1063 | * compiler optimization in the original driver. | ||
1064 | * Essentially, what we do here is resetting all NRSSI LT | ||
1065 | * entries to -32 (see the limit_value() in nrssi_hw_update()) | ||
1066 | */ | ||
1067 | bcm43xx_nrssi_hw_update(bcm, 0xFFFF); | ||
1063 | bcm43xx_calc_nrssi_threshold(bcm); | 1068 | bcm43xx_calc_nrssi_threshold(bcm); |
1064 | } else if (phy->connected) { | 1069 | } else if (phy->connected) { |
1065 | if (radio->nrssi[0] == -1000) { | 1070 | if (radio->nrssi[0] == -1000) { |