diff options
Diffstat (limited to 'sys/contrib/dev/iwlwifi/mvm/rs-fw.c')
| -rw-r--r-- | sys/contrib/dev/iwlwifi/mvm/rs-fw.c | 36 | 
1 files changed, 8 insertions, 28 deletions
| diff --git a/sys/contrib/dev/iwlwifi/mvm/rs-fw.c b/sys/contrib/dev/iwlwifi/mvm/rs-fw.c index 74c2cbf60c1b..23a9f1a59ad3 100644 --- a/sys/contrib/dev/iwlwifi/mvm/rs-fw.c +++ b/sys/contrib/dev/iwlwifi/mvm/rs-fw.c @@ -1,7 +1,7 @@  // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause  /*   * Copyright (C) 2017 Intel Deutschland GmbH - * Copyright (C) 2018-2024 Intel Corporation + * Copyright (C) 2018-2025 Intel Corporation   */  #include "rs.h"  #include "fw-api.h" @@ -72,7 +72,7 @@ static u16 rs_fw_get_config_flags(struct iwl_mvm *mvm,  	u16 flags = 0;  	/* get STBC flags */ -	if (mvm->cfg->ht_params->stbc && +	if (mvm->cfg->ht_params.stbc &&  	    (num_of_ant(iwl_mvm_get_valid_tx_ant(mvm)) > 1)) {  		if (he_cap->has_he && he_cap->he_cap_elem.phy_cap_info[2] &  				      IEEE80211_HE_PHY_CAP2_STBC_RX_UNDER_80MHZ) @@ -83,7 +83,7 @@ static u16 rs_fw_get_config_flags(struct iwl_mvm *mvm,  			flags |= IWL_TLC_MNG_CFG_FLAGS_STBC_MSK;  	} -	if (mvm->cfg->ht_params->ldpc && +	if (mvm->cfg->ht_params.ldpc &&  	    ((ht_cap->cap & IEEE80211_HT_CAP_LDPC_CODING) ||  	     (vht_ena && (vht_cap->cap & IEEE80211_VHT_CAP_RXLDPC))))  		flags |= IWL_TLC_MNG_CFG_FLAGS_LDPC_MSK; @@ -440,12 +440,6 @@ void iwl_mvm_tlc_update_notif(struct iwl_mvm *mvm,  	mvmsta = iwl_mvm_sta_from_mac80211(sta); -	if (!mvmsta) { -		IWL_ERR(mvm, "Invalid sta id (%d) in FW TLC notification\n", -			notif->sta_id); -		goto out; -	} -  	flags = le32_to_cpu(notif->flags);  	mvm_link_sta = rcu_dereference(mvmsta->link[link_sta->link_id]); @@ -460,22 +454,11 @@ void iwl_mvm_tlc_update_notif(struct iwl_mvm *mvm,  	if (flags & IWL_TLC_NOTIF_FLAG_RATE) {  		char pretty_rate[100]; -		if (iwl_fw_lookup_notif_ver(mvm->fw, DATA_PATH_GROUP, -					    TLC_MNG_UPDATE_NOTIF, 0) < 3) { -			rs_pretty_print_rate_v1(pretty_rate, -						sizeof(pretty_rate), -						le32_to_cpu(notif->rate)); -			IWL_DEBUG_RATE(mvm, -				       "Got rate in old format. Rate: %s. Converting.\n", -				       pretty_rate); -			lq_sta->last_rate_n_flags = -				iwl_new_rate_from_v1(le32_to_cpu(notif->rate)); -		} else { -			lq_sta->last_rate_n_flags = le32_to_cpu(notif->rate); -		} +		lq_sta->last_rate_n_flags = +			iwl_mvm_v3_rate_from_fw(notif->rate, mvm->fw_rates_ver);  		rs_pretty_print_rate(pretty_rate, sizeof(pretty_rate),  				     lq_sta->last_rate_n_flags); -		IWL_DEBUG_RATE(mvm, "new rate: %s\n", pretty_rate); +		IWL_DEBUG_RATE(mvm, "rate: %s\n", pretty_rate);  	}  	if (flags & IWL_TLC_NOTIF_FLAG_AMSDU && !mvm_link_sta->orig_amsdu_len) { @@ -618,11 +601,8 @@ void iwl_mvm_rs_fw_rate_init(struct iwl_mvm *mvm,  	int cmd_ver;  	int ret; -	/* Enable external EHT LTF only for GL device and if there's -	 * mutual support by AP and client -	 */ -	if (CSR_HW_REV_TYPE(mvm->trans->hw_rev) == IWL_CFG_MAC_TYPE_GL && -	    sband_eht_cap && +	/* Enable extra EHT LTF if there's mutual support by AP and client */ +	if (sband_eht_cap &&  	    sband_eht_cap->eht_cap_elem.phy_cap_info[5] &  		IEEE80211_EHT_PHY_CAP5_SUPP_EXTRA_EHT_LTF &&  	    link_sta->eht_cap.has_eht && | 
