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>
This commit is contained in:
parent
9ee1ba474f
commit
43fd6c7ebd
|
@ -283,8 +283,8 @@ static void rtl8225_rf_set_tx_power(struct ieee80211_hw *dev, int channel)
|
||||||
u32 reg;
|
u32 reg;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
cck_power = priv->channels[channel - 1].val & 0xF;
|
cck_power = priv->channels[channel - 1].val & 0xFF;
|
||||||
ofdm_power = priv->channels[channel - 1].val >> 4;
|
ofdm_power = priv->channels[channel - 1].val >> 8;
|
||||||
|
|
||||||
cck_power = min(cck_power, (u8)11);
|
cck_power = min(cck_power, (u8)11);
|
||||||
ofdm_power = min(ofdm_power, (u8)35);
|
ofdm_power = min(ofdm_power, (u8)35);
|
||||||
|
@ -500,8 +500,8 @@ static void rtl8225z2_rf_set_tx_power(struct ieee80211_hw *dev, int channel)
|
||||||
u32 reg;
|
u32 reg;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
cck_power = priv->channels[channel - 1].val & 0xF;
|
cck_power = priv->channels[channel - 1].val & 0xFF;
|
||||||
ofdm_power = priv->channels[channel - 1].val >> 4;
|
ofdm_power = priv->channels[channel - 1].val >> 8;
|
||||||
|
|
||||||
cck_power = min(cck_power, (u8)15);
|
cck_power = min(cck_power, (u8)15);
|
||||||
cck_power += priv->txpwr_base & 0xF;
|
cck_power += priv->txpwr_base & 0xF;
|
||||||
|
|
Loading…
Reference in New Issue