diff options
author | Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se> | 2014-06-23 17:53:55 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-06-25 15:40:33 -0400 |
commit | 965ec74110011dbcb4e6a7059c7b4d31ee95c33a (patch) | |
tree | c023514a7dd4c01f74ed91960b39d754dde460cd /drivers/net | |
parent | 8a607208f522e6b37a93c9258d28d75c15263961 (diff) |
rtlwifi/rtl8192c[eu]: Fix media status register mask
bt_msr & 0xfc will never match 0x3. Fix this by using a mask that actually matches the available types.
Signed-off-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192ce/hw.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192ce/reg.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192cu/hw.c | 2 |
3 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/hw.c b/drivers/net/wireless/rtlwifi/rtl8192ce/hw.c index cdecb0fd4d8e..e2736929b5d0 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192ce/hw.c +++ b/drivers/net/wireless/rtlwifi/rtl8192ce/hw.c | |||
@@ -1206,7 +1206,7 @@ static int _rtl92ce_set_media_status(struct ieee80211_hw *hw, | |||
1206 | 1206 | ||
1207 | rtl_write_byte(rtlpriv, (MSR), bt_msr); | 1207 | rtl_write_byte(rtlpriv, (MSR), bt_msr); |
1208 | rtlpriv->cfg->ops->led_control(hw, ledaction); | 1208 | rtlpriv->cfg->ops->led_control(hw, ledaction); |
1209 | if ((bt_msr & 0xfc) == MSR_AP) | 1209 | if ((bt_msr & MSR_MASK) == MSR_AP) |
1210 | rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x00); | 1210 | rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x00); |
1211 | else | 1211 | else |
1212 | rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x66); | 1212 | rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x66); |
diff --git a/drivers/net/wireless/rtlwifi/rtl8192ce/reg.h b/drivers/net/wireless/rtlwifi/rtl8192ce/reg.h index ed703a1b3b7c..dc8460c0b32f 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192ce/reg.h +++ b/drivers/net/wireless/rtlwifi/rtl8192ce/reg.h | |||
@@ -375,6 +375,7 @@ | |||
375 | #define MSR_ADHOC 0x01 | 375 | #define MSR_ADHOC 0x01 |
376 | #define MSR_INFRA 0x02 | 376 | #define MSR_INFRA 0x02 |
377 | #define MSR_AP 0x03 | 377 | #define MSR_AP 0x03 |
378 | #define MSR_MASK 0x03 | ||
378 | 379 | ||
379 | #define RRSR_RSC_OFFSET 21 | 380 | #define RRSR_RSC_OFFSET 21 |
380 | #define RRSR_SHORT_OFFSET 23 | 381 | #define RRSR_SHORT_OFFSET 23 |
diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c b/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c index a903c2671b4d..270cbffcac70 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c +++ b/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c | |||
@@ -1360,7 +1360,7 @@ static int _rtl92cu_set_media_status(struct ieee80211_hw *hw, | |||
1360 | } | 1360 | } |
1361 | rtl_write_byte(rtlpriv, (MSR), bt_msr); | 1361 | rtl_write_byte(rtlpriv, (MSR), bt_msr); |
1362 | rtlpriv->cfg->ops->led_control(hw, ledaction); | 1362 | rtlpriv->cfg->ops->led_control(hw, ledaction); |
1363 | if ((bt_msr & 0xfc) == MSR_AP) | 1363 | if ((bt_msr & MSR_MASK) == MSR_AP) |
1364 | rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x00); | 1364 | rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x00); |
1365 | else | 1365 | else |
1366 | rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x66); | 1366 | rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x66); |