diff options
author | Eyal Shapira <eyal@wizery.com> | 2013-11-07 12:38:04 -0500 |
---|---|---|
committer | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2013-12-09 15:29:05 -0500 |
commit | a7b8b2ca916ca4ecf248fa12275eeceff510ad22 (patch) | |
tree | 5ef69e29b52d9781811a36a99bed585f1a409f08 /drivers/net/wireless | |
parent | 84c317c9b09f757b4c4a4fb38549ac54d1559419 (diff) |
iwlwifi: fix check for a single rx antenna
valid_rx_ant is a bitmask of available antennas and not the number
of Rx antennas. Use num_of_ant and remove duplicate definitions
in both dvm and mvm.
Signed-off-by: Eyal Shapira <eyal@wizery.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r-- | drivers/net/wireless/iwlwifi/dvm/rs.h | 7 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-config.h | 6 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-nvm-parse.c | 3 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/mvm/rs.h | 8 |
4 files changed, 8 insertions, 16 deletions
diff --git a/drivers/net/wireless/iwlwifi/dvm/rs.h b/drivers/net/wireless/iwlwifi/dvm/rs.h index 26fc550cd68c..41988f4b8a5a 100644 --- a/drivers/net/wireless/iwlwifi/dvm/rs.h +++ b/drivers/net/wireless/iwlwifi/dvm/rs.h | |||
@@ -389,13 +389,6 @@ struct iwl_lq_sta { | |||
389 | u8 last_bt_traffic; | 389 | u8 last_bt_traffic; |
390 | }; | 390 | }; |
391 | 391 | ||
392 | static inline u8 num_of_ant(u8 mask) | ||
393 | { | ||
394 | return !!((mask) & ANT_A) + | ||
395 | !!((mask) & ANT_B) + | ||
396 | !!((mask) & ANT_C); | ||
397 | } | ||
398 | |||
399 | static inline u8 first_antenna(u8 mask) | 392 | static inline u8 first_antenna(u8 mask) |
400 | { | 393 | { |
401 | if (mask & ANT_A) | 394 | if (mask & ANT_A) |
diff --git a/drivers/net/wireless/iwlwifi/iwl-config.h b/drivers/net/wireless/iwlwifi/iwl-config.h index 03fd9aa8bfda..0b916249669e 100644 --- a/drivers/net/wireless/iwlwifi/iwl-config.h +++ b/drivers/net/wireless/iwlwifi/iwl-config.h | |||
@@ -129,6 +129,12 @@ enum iwl_led_mode { | |||
129 | #define ANT_BC (ANT_B | ANT_C) | 129 | #define ANT_BC (ANT_B | ANT_C) |
130 | #define ANT_ABC (ANT_A | ANT_B | ANT_C) | 130 | #define ANT_ABC (ANT_A | ANT_B | ANT_C) |
131 | 131 | ||
132 | static inline u8 num_of_ant(u8 mask) | ||
133 | { | ||
134 | return !!((mask) & ANT_A) + | ||
135 | !!((mask) & ANT_B) + | ||
136 | !!((mask) & ANT_C); | ||
137 | } | ||
132 | 138 | ||
133 | /* | 139 | /* |
134 | * @max_ll_items: max number of OTP blocks | 140 | * @max_ll_items: max number of OTP blocks |
diff --git a/drivers/net/wireless/iwlwifi/iwl-nvm-parse.c b/drivers/net/wireless/iwlwifi/iwl-nvm-parse.c index 2fab203d3027..94aef22df73a 100644 --- a/drivers/net/wireless/iwlwifi/iwl-nvm-parse.c +++ b/drivers/net/wireless/iwlwifi/iwl-nvm-parse.c | |||
@@ -283,7 +283,8 @@ static void iwl_init_vht_hw_capab(const struct iwl_cfg *cfg, | |||
283 | IEEE80211_VHT_MCS_NOT_SUPPORTED << 12 | | 283 | IEEE80211_VHT_MCS_NOT_SUPPORTED << 12 | |
284 | IEEE80211_VHT_MCS_NOT_SUPPORTED << 14); | 284 | IEEE80211_VHT_MCS_NOT_SUPPORTED << 14); |
285 | 285 | ||
286 | if (data->valid_rx_ant == 1 || cfg->rx_with_siso_diversity) { | 286 | if (num_of_ant(data->valid_rx_ant) == 1 || |
287 | cfg->rx_with_siso_diversity) { | ||
287 | vht_cap->cap |= IEEE80211_VHT_CAP_RX_ANTENNA_PATTERN | | 288 | vht_cap->cap |= IEEE80211_VHT_CAP_RX_ANTENNA_PATTERN | |
288 | IEEE80211_VHT_CAP_TX_ANTENNA_PATTERN; | 289 | IEEE80211_VHT_CAP_TX_ANTENNA_PATTERN; |
289 | /* this works because NOT_SUPPORTED == 3 */ | 290 | /* this works because NOT_SUPPORTED == 3 */ |
diff --git a/drivers/net/wireless/iwlwifi/mvm/rs.h b/drivers/net/wireless/iwlwifi/mvm/rs.h index 8d5dc78086ea..b41686b76721 100644 --- a/drivers/net/wireless/iwlwifi/mvm/rs.h +++ b/drivers/net/wireless/iwlwifi/mvm/rs.h | |||
@@ -343,14 +343,6 @@ enum iwl_bt_coex_profile_traffic_load { | |||
343 | */ | 343 | */ |
344 | }; | 344 | }; |
345 | 345 | ||
346 | |||
347 | static inline u8 num_of_ant(u8 mask) | ||
348 | { | ||
349 | return !!((mask) & ANT_A) + | ||
350 | !!((mask) & ANT_B) + | ||
351 | !!((mask) & ANT_C); | ||
352 | } | ||
353 | |||
354 | /* Initialize station's rate scaling information after adding station */ | 346 | /* Initialize station's rate scaling information after adding station */ |
355 | void iwl_mvm_rs_rate_init(struct iwl_mvm *mvm, struct ieee80211_sta *sta, | 347 | void iwl_mvm_rs_rate_init(struct iwl_mvm *mvm, struct ieee80211_sta *sta, |
356 | enum ieee80211_band band, bool init); | 348 | enum ieee80211_band band, bool init); |