diff options
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/sta.c')
| -rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 33 | 
1 files changed, 16 insertions, 17 deletions
| diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c index c7f9d3870f21..bbb1522e7280 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c @@ -86,7 +86,7 @@ int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta,  		}  	} -	switch (sta->bandwidth) { +	switch (sta->deflink.bandwidth) {  	case IEEE80211_STA_RX_BW_320:  	case IEEE80211_STA_RX_BW_160:  		add_sta_cmd.station_flags |= cpu_to_le32(STA_FLG_FAT_EN_160MHZ); @@ -98,13 +98,13 @@ int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta,  		add_sta_cmd.station_flags |= cpu_to_le32(STA_FLG_FAT_EN_40MHZ);  		fallthrough;  	case IEEE80211_STA_RX_BW_20: -		if (sta->ht_cap.ht_supported) +		if (sta->deflink.ht_cap.ht_supported)  			add_sta_cmd.station_flags |=  				cpu_to_le32(STA_FLG_FAT_EN_20MHZ);  		break;  	} -	switch (sta->rx_nss) { +	switch (sta->deflink.rx_nss) {  	case 1:  		add_sta_cmd.station_flags |= cpu_to_le32(STA_FLG_MIMO_EN_SISO);  		break; @@ -134,12 +134,12 @@ int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta,  		break;  	} -	if (sta->ht_cap.ht_supported) { +	if (sta->deflink.ht_cap.ht_supported) {  		add_sta_cmd.station_flags_msk |=  			cpu_to_le32(STA_FLG_MAX_AGG_SIZE_MSK |  				    STA_FLG_AGG_MPDU_DENS_MSK); -		mpdu_dens = sta->ht_cap.ampdu_density; +		mpdu_dens = sta->deflink.ht_cap.ampdu_density;  	}  	if (mvm_sta->vif->bss_conf.chandef.chan->band == NL80211_BAND_6GHZ) { @@ -147,18 +147,17 @@ int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta,  			cpu_to_le32(STA_FLG_MAX_AGG_SIZE_MSK |  				    STA_FLG_AGG_MPDU_DENS_MSK); -		mpdu_dens = le16_get_bits(sta->he_6ghz_capa.capa, +		mpdu_dens = le16_get_bits(sta->deflink.he_6ghz_capa.capa,  					  IEEE80211_HE_6GHZ_CAP_MIN_MPDU_START); -		agg_size = le16_get_bits(sta->he_6ghz_capa.capa, -				IEEE80211_HE_6GHZ_CAP_MAX_AMPDU_LEN_EXP); -	} else -	if (sta->vht_cap.vht_supported) { -		agg_size = sta->vht_cap.cap & +		agg_size = le16_get_bits(sta->deflink.he_6ghz_capa.capa, +					 IEEE80211_HE_6GHZ_CAP_MAX_AMPDU_LEN_EXP); +	} else if (sta->deflink.vht_cap.vht_supported) { +		agg_size = sta->deflink.vht_cap.cap &  			IEEE80211_VHT_CAP_MAX_A_MPDU_LENGTH_EXPONENT_MASK;  		agg_size >>=  			IEEE80211_VHT_CAP_MAX_A_MPDU_LENGTH_EXPONENT_SHIFT; -	} else if (sta->ht_cap.ht_supported) { -		agg_size = sta->ht_cap.ampdu_factor; +	} else if (sta->deflink.ht_cap.ht_supported) { +		agg_size = sta->deflink.ht_cap.ampdu_factor;  	}  	/* D6.0 10.12.2 A-MPDU length limit rules @@ -169,8 +168,8 @@ int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta,  	 * Maximum AMPDU Length Exponent Extension field in its HE  	 * Capabilities element  	 */ -	if (sta->he_cap.has_he) -		agg_size += u8_get_bits(sta->he_cap.he_cap_elem.mac_cap_info[3], +	if (sta->deflink.he_cap.has_he) +		agg_size += u8_get_bits(sta->deflink.he_cap.he_cap_elem.mac_cap_info[3],  					IEEE80211_HE_MAC_CAP3_MAX_AMPDU_LEN_EXP_MASK);  	/* Limit to max A-MPDU supported by FW */ @@ -782,7 +781,7 @@ static int iwl_mvm_tvqm_enable_txq(struct iwl_mvm *mvm,  		/* this queue isn't used for traffic (cab_queue) */  		if (IS_ERR_OR_NULL(sta)) {  			size = IWL_MGMT_QUEUE_SIZE; -		} else if (sta->he_cap.has_he) { +		} else if (sta->deflink.he_cap.has_he) {  			/* support for 256 ba size */  			size = IWL_DEFAULT_QUEUE_SIZE_HE;  		} else { @@ -1059,7 +1058,7 @@ static bool iwl_mvm_remove_inactive_tids(struct iwl_mvm *mvm,  					 unsigned long *unshare_queues,  					 unsigned long *changetid_queues)  { -	int tid; +	unsigned int tid;  	lockdep_assert_held(&mvmsta->lock);  	lockdep_assert_held(&mvm->mutex); | 
