Commit e119e740 authored by Emmanuel Grumbach's avatar Emmanuel Grumbach Committed by Johannes Berg
Browse files

wifi: iwlwifi: mvm: make iwl_mvm_set_fw_mu_edca_params mld aware

parent eeef0168
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -188,7 +188,7 @@ int iwl_mvm_link_changed(struct iwl_mvm *mvm, struct ieee80211_vif *vif,

	/* TODO  how to set ndp_fdbk_buff_th_exp? */

	if (iwl_mvm_set_fw_mu_edca_params(mvm, mvmvif,
	if (iwl_mvm_set_fw_mu_edca_params(mvm, mvmvif->link[link_id],
					  &cmd.trig_based_txf[0])) {
		flags |= LINK_FLG_MU_EDCA_CW;
		flags_mask |= LINK_FLG_MU_EDCA_CW;
+5 −5
Original line number Diff line number Diff line
@@ -2240,7 +2240,7 @@ int iwl_mvm_set_sta_pkt_ext(struct iwl_mvm *mvm,
 * is enabled or not
 */
bool iwl_mvm_set_fw_mu_edca_params(struct iwl_mvm *mvm,
				   struct iwl_mvm_vif *mvmvif,
				   const struct iwl_mvm_vif_link_info *link_info,
				   struct iwl_he_backoff_conf *trig_based_txf)
{
	int i;
@@ -2248,11 +2248,11 @@ bool iwl_mvm_set_fw_mu_edca_params(struct iwl_mvm *mvm,
	bool mu_edca_enabled = true;

	for (i = 0; i < IEEE80211_NUM_ACS; i++) {
		struct ieee80211_he_mu_edca_param_ac_rec *mu_edca =
			&mvmvif->deflink.queue_params[i].mu_edca_param_rec;
		const struct ieee80211_he_mu_edca_param_ac_rec *mu_edca =
			&link_info->queue_params[i].mu_edca_param_rec;
		u8 ac = iwl_mvm_mac80211_ac_to_ucode_ac(i);

		if (!mvmvif->deflink.queue_params[i].mu_edca) {
		if (!link_info->queue_params[i].mu_edca) {
			mu_edca_enabled = false;
			break;
		}
@@ -2398,7 +2398,7 @@ static void iwl_mvm_cfg_he_sta(struct iwl_mvm *mvm,

	rcu_read_unlock();

	if (iwl_mvm_set_fw_mu_edca_params(mvm, mvmvif,
	if (iwl_mvm_set_fw_mu_edca_params(mvm, &mvmvif->deflink,
					  &sta_ctxt_cmd.trig_based_txf[0]))
		flags |= STA_CTXT_HE_MU_EDCA_CW;

+1 −1
Original line number Diff line number Diff line
@@ -1804,7 +1804,7 @@ void iwl_mvm_set_fw_qos_params(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
			       struct ieee80211_bss_conf *link_conf,
			       struct iwl_ac_qos *ac, __le32 *qos_flags);
bool iwl_mvm_set_fw_mu_edca_params(struct iwl_mvm *mvm,
				   struct iwl_mvm_vif *mvmvif,
				   const struct iwl_mvm_vif_link_info *link_info,
				   struct iwl_he_backoff_conf *trig_based_txf);
void iwl_mvm_set_fw_dtim_tbtt(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
			      struct ieee80211_bss_conf *link_conf,