mu_edca
if (params->mu_edca) {
const struct ieee80211_he_mu_edca_param_ac_rec *mu_edca =
if (!mld_link->queue_params[mac_ac].mu_edca)
cpu_to_le16(mu_edca->ecw_min_max & 0xf);
cpu_to_le16((mu_edca->ecw_min_max & 0xf0) >> 4);
cpu_to_le16(mu_edca->aifsn & 0xf);
cpu_to_le16(mu_edca->mu_edca_timer);
const struct ieee80211_he_mu_edca_param_ac_rec *mu_edca =
if (!link_info->queue_params[i].mu_edca) {
cpu_to_le16(mu_edca->ecw_min_max & 0xf);
cpu_to_le16((mu_edca->ecw_min_max & 0xf0) >> 4);
cpu_to_le16(mu_edca->aifsn & 0xf);
cpu_to_le16(mu_edca->mu_edca_timer);
struct mu_edca edca[IEEE80211_NUM_ACS];
struct mu_edca *e;
if (!mvif->bss_conf.queue_params[ac].mu_edca)
struct ieee80211_he_mu_edca_param_ac_rec *mu_edca;
if (!params->mu_edca)
mu_edca = ¶ms->mu_edca_param_rec;
aifsn = FIELD_GET(GENMASK(3, 0), mu_edca->aifsn);
timer_32us = mu_edca->mu_edca_timer << 8;
FIELD_PREP(B_AX_MUEDCA_BE_PARAM_0_CW_MASK, mu_edca->ecw_min_max) |
bool mu_edca;
const struct ieee80211_mu_edca_param_set *mu_edca)
mu_edca_count = mu_edca ? mu_edca->mu_qos_info & 0x0f : -1;
params[ac].mu_edca = !!mu_edca;
if (mu_edca)
params[ac].mu_edca_param_rec = mu_edca->ac_bk;
params[ac].mu_edca = !!mu_edca;
if (mu_edca)
params[ac].mu_edca_param_rec = mu_edca->ac_vi;
params[ac].mu_edca = !!mu_edca;
if (mu_edca)
params[ac].mu_edca_param_rec = mu_edca->ac_vo;
params[ac].mu_edca = !!mu_edca;
if (mu_edca)
params[ac].mu_edca_param_rec = mu_edca->ac_be;
const struct ieee80211_mu_edca_param_set *mu_edca)
mu_edca))