rtl8187: fix tx power reading
CCK and OFDM power levels are stored in adjacent bytes, not nibbles.
Signed-off-by: Michael Wu <flamingice@sourmilk.net>
Signed-off-by: Andrea Merello <andreamrl@tiscali.it>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
diff --git a/drivers/net/wireless/rtl8187_rtl8225.c b/drivers/net/wireless/rtl8187_rtl8225.c
index efc4120..eade81f 100644
--- a/drivers/net/wireless/rtl8187_rtl8225.c
+++ b/drivers/net/wireless/rtl8187_rtl8225.c
@@ -283,8 +283,8 @@
u32 reg;
int i;
- cck_power = priv->channels[channel - 1].val & 0xF;
- ofdm_power = priv->channels[channel - 1].val >> 4;
+ cck_power = priv->channels[channel - 1].val & 0xFF;
+ ofdm_power = priv->channels[channel - 1].val >> 8;
cck_power = min(cck_power, (u8)11);
ofdm_power = min(ofdm_power, (u8)35);
@@ -500,8 +500,8 @@
u32 reg;
int i;
- cck_power = priv->channels[channel - 1].val & 0xF;
- ofdm_power = priv->channels[channel - 1].val >> 4;
+ cck_power = priv->channels[channel - 1].val & 0xFF;
+ ofdm_power = priv->channels[channel - 1].val >> 8;
cck_power = min(cck_power, (u8)15);
cck_power += priv->txpwr_base & 0xF;