diff options
author | Eyal Shapira <eyal@wizery.com> | 2015-01-16 04:01:51 -0500 |
---|---|---|
committer | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2015-01-22 10:55:23 -0500 |
commit | 2c59d80c448c8b6c0978986bd687466a233bd8ae (patch) | |
tree | 954659b3993976bf00aedbe55cd15ed7f489167b | |
parent | a4ca3ed4ebefab9cfb342518009f2200847778e5 (diff) |
iwlwifi: mvm: rs: refactor ht/vht init
Prepare to add some more code there so refactor to
separate functions.
Signed-off-by: Eyal Shapira <eyalx.shapira@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
-rw-r--r-- | drivers/net/wireless/iwlwifi/mvm/rs.c | 42 |
1 files changed, 4 insertions, 38 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/rs.c b/drivers/net/wireless/iwlwifi/mvm/rs.c index 997a3831117c..554b3a5e442c 100644 --- a/drivers/net/wireless/iwlwifi/mvm/rs.c +++ b/drivers/net/wireless/iwlwifi/mvm/rs.c | |||
@@ -2714,44 +2714,10 @@ void iwl_mvm_rs_rate_init(struct iwl_mvm *mvm, struct ieee80211_sta *sta, | |||
2714 | lq_sta->active_legacy_rate |= BIT(sband->bitrates[i].hw_value); | 2714 | lq_sta->active_legacy_rate |= BIT(sband->bitrates[i].hw_value); |
2715 | 2715 | ||
2716 | /* TODO: should probably account for rx_highest for both HT/VHT */ | 2716 | /* TODO: should probably account for rx_highest for both HT/VHT */ |
2717 | if (!vht_cap || !vht_cap->vht_supported) { | 2717 | if (!vht_cap || !vht_cap->vht_supported) |
2718 | /* active_siso_rate mask includes 9 MBits (bit 5), | 2718 | rs_ht_init(mvm, sta, lq_sta, ht_cap); |
2719 | * and CCK (bits 0-3), supp_rates[] does not; | 2719 | else |
2720 | * shift to convert format, force 9 MBits off. | 2720 | rs_vht_init(mvm, sta, lq_sta, vht_cap); |
2721 | */ | ||
2722 | lq_sta->active_siso_rate = ht_cap->mcs.rx_mask[0] << 1; | ||
2723 | lq_sta->active_siso_rate |= ht_cap->mcs.rx_mask[0] & 0x1; | ||
2724 | lq_sta->active_siso_rate &= ~((u16)0x2); | ||
2725 | lq_sta->active_siso_rate <<= IWL_FIRST_OFDM_RATE; | ||
2726 | |||
2727 | /* Same here */ | ||
2728 | lq_sta->active_mimo2_rate = ht_cap->mcs.rx_mask[1] << 1; | ||
2729 | lq_sta->active_mimo2_rate |= ht_cap->mcs.rx_mask[1] & 0x1; | ||
2730 | lq_sta->active_mimo2_rate &= ~((u16)0x2); | ||
2731 | lq_sta->active_mimo2_rate <<= IWL_FIRST_OFDM_RATE; | ||
2732 | |||
2733 | lq_sta->is_vht = false; | ||
2734 | if (mvm->cfg->ht_params->ldpc && | ||
2735 | (ht_cap->cap & IEEE80211_HT_CAP_LDPC_CODING)) | ||
2736 | lq_sta->ldpc = true; | ||
2737 | |||
2738 | if (mvm->cfg->ht_params->stbc && | ||
2739 | (num_of_ant(iwl_mvm_get_valid_tx_ant(mvm)) > 1) && | ||
2740 | (ht_cap->cap & IEEE80211_HT_CAP_RX_STBC)) | ||
2741 | lq_sta->stbc = true; | ||
2742 | } else { | ||
2743 | rs_vht_set_enabled_rates(sta, vht_cap, lq_sta); | ||
2744 | lq_sta->is_vht = true; | ||
2745 | |||
2746 | if (mvm->cfg->ht_params->ldpc && | ||
2747 | (vht_cap->cap & IEEE80211_VHT_CAP_RXLDPC)) | ||
2748 | lq_sta->ldpc = true; | ||
2749 | |||
2750 | if (mvm->cfg->ht_params->stbc && | ||
2751 | (num_of_ant(iwl_mvm_get_valid_tx_ant(mvm)) > 1) && | ||
2752 | (vht_cap->cap & IEEE80211_VHT_CAP_RXSTBC_MASK)) | ||
2753 | lq_sta->stbc = true; | ||
2754 | } | ||
2755 | 2721 | ||
2756 | if (IWL_MVM_RS_DISABLE_P2P_MIMO && sta_priv->vif->p2p) | 2722 | if (IWL_MVM_RS_DISABLE_P2P_MIMO && sta_priv->vif->p2p) |
2757 | lq_sta->active_mimo2_rate = 0; | 2723 | lq_sta->active_mimo2_rate = 0; |