iwlegacy: move qos_data out of ctx structure
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
8c9c48d5a9
commit
8d44f2bd75
3 changed files with 18 additions and 19 deletions
|
@ -4496,15 +4496,15 @@ il_mac_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, u16 queue,
|
||||||
|
|
||||||
spin_lock_irqsave(&il->lock, flags);
|
spin_lock_irqsave(&il->lock, flags);
|
||||||
|
|
||||||
il->ctx.qos_data.def_qos_parm.ac[q].cw_min =
|
il->qos_data.def_qos_parm.ac[q].cw_min =
|
||||||
cpu_to_le16(params->cw_min);
|
cpu_to_le16(params->cw_min);
|
||||||
il->ctx.qos_data.def_qos_parm.ac[q].cw_max =
|
il->qos_data.def_qos_parm.ac[q].cw_max =
|
||||||
cpu_to_le16(params->cw_max);
|
cpu_to_le16(params->cw_max);
|
||||||
il->ctx.qos_data.def_qos_parm.ac[q].aifsn = params->aifs;
|
il->qos_data.def_qos_parm.ac[q].aifsn = params->aifs;
|
||||||
il->ctx.qos_data.def_qos_parm.ac[q].edca_txop =
|
il->qos_data.def_qos_parm.ac[q].edca_txop =
|
||||||
cpu_to_le16((params->txop * 32));
|
cpu_to_le16((params->txop * 32));
|
||||||
|
|
||||||
il->ctx.qos_data.def_qos_parm.ac[q].reserved1 = 0;
|
il->qos_data.def_qos_parm.ac[q].reserved1 = 0;
|
||||||
|
|
||||||
spin_unlock_irqrestore(&il->lock, flags);
|
spin_unlock_irqrestore(&il->lock, flags);
|
||||||
|
|
||||||
|
@ -5230,20 +5230,20 @@ il_update_qos(struct il_priv *il, struct il_rxon_context *ctx)
|
||||||
if (!ctx->is_active)
|
if (!ctx->is_active)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ctx->qos_data.def_qos_parm.qos_flags = 0;
|
il->qos_data.def_qos_parm.qos_flags = 0;
|
||||||
|
|
||||||
if (ctx->qos_data.qos_active)
|
if (il->qos_data.qos_active)
|
||||||
ctx->qos_data.def_qos_parm.qos_flags |=
|
il->qos_data.def_qos_parm.qos_flags |=
|
||||||
QOS_PARAM_FLG_UPDATE_EDCA_MSK;
|
QOS_PARAM_FLG_UPDATE_EDCA_MSK;
|
||||||
|
|
||||||
if (ctx->ht.enabled)
|
if (ctx->ht.enabled)
|
||||||
ctx->qos_data.def_qos_parm.qos_flags |= QOS_PARAM_FLG_TGN_MSK;
|
il->qos_data.def_qos_parm.qos_flags |= QOS_PARAM_FLG_TGN_MSK;
|
||||||
|
|
||||||
D_QOS("send QoS cmd with Qos active=%d FLAGS=0x%X\n",
|
D_QOS("send QoS cmd with Qos active=%d FLAGS=0x%X\n",
|
||||||
ctx->qos_data.qos_active, ctx->qos_data.def_qos_parm.qos_flags);
|
il->qos_data.qos_active, il->qos_data.def_qos_parm.qos_flags);
|
||||||
|
|
||||||
il_send_cmd_pdu_async(il, C_QOS_PARAM, sizeof(struct il_qosparam_cmd),
|
il_send_cmd_pdu_async(il, C_QOS_PARAM, sizeof(struct il_qosparam_cmd),
|
||||||
&ctx->qos_data.def_qos_parm, NULL);
|
&il->qos_data.def_qos_parm, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -5596,7 +5596,7 @@ il_mac_bss_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
spin_lock_irqsave(&il->lock, flags);
|
spin_lock_irqsave(&il->lock, flags);
|
||||||
ctx->qos_data.qos_active = bss_conf->qos;
|
il->qos_data.qos_active = bss_conf->qos;
|
||||||
il_update_qos(il, ctx);
|
il_update_qos(il, ctx);
|
||||||
spin_unlock_irqrestore(&il->lock, flags);
|
spin_unlock_irqrestore(&il->lock, flags);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1165,8 +1165,6 @@ struct il_rxon_context {
|
||||||
*/
|
*/
|
||||||
bool always_active, is_active;
|
bool always_active, is_active;
|
||||||
|
|
||||||
struct il_qos_info qos_data;
|
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
bool non_gf_sta_present;
|
bool non_gf_sta_present;
|
||||||
u8 protection;
|
u8 protection;
|
||||||
|
@ -1278,6 +1276,8 @@ struct il_priv {
|
||||||
|
|
||||||
struct il_rxon_context ctx;
|
struct il_rxon_context ctx;
|
||||||
|
|
||||||
|
struct il_qos_info qos_data;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* We declare this const so it can only be
|
* We declare this const so it can only be
|
||||||
* changed via explicit cast within the
|
* changed via explicit cast within the
|
||||||
|
|
|
@ -644,7 +644,6 @@ il_dbgfs_qos_read(struct file *file, char __user *user_buf, size_t count,
|
||||||
loff_t *ppos)
|
loff_t *ppos)
|
||||||
{
|
{
|
||||||
struct il_priv *il = file->private_data;
|
struct il_priv *il = file->private_data;
|
||||||
struct il_rxon_context *ctx = &il->ctx;
|
|
||||||
int pos = 0, i;
|
int pos = 0, i;
|
||||||
char buf[256];
|
char buf[256];
|
||||||
const size_t bufsz = sizeof(buf);
|
const size_t bufsz = sizeof(buf);
|
||||||
|
@ -656,10 +655,10 @@ il_dbgfs_qos_read(struct file *file, char __user *user_buf, size_t count,
|
||||||
pos +=
|
pos +=
|
||||||
scnprintf(buf + pos, bufsz - pos,
|
scnprintf(buf + pos, bufsz - pos,
|
||||||
"AC[%d]\t%u\t%u\t%u\t%u\n", i,
|
"AC[%d]\t%u\t%u\t%u\t%u\n", i,
|
||||||
ctx->qos_data.def_qos_parm.ac[i].cw_min,
|
il->qos_data.def_qos_parm.ac[i].cw_min,
|
||||||
ctx->qos_data.def_qos_parm.ac[i].cw_max,
|
il->qos_data.def_qos_parm.ac[i].cw_max,
|
||||||
ctx->qos_data.def_qos_parm.ac[i].aifsn,
|
il->qos_data.def_qos_parm.ac[i].aifsn,
|
||||||
ctx->qos_data.def_qos_parm.ac[i].edca_txop);
|
il->qos_data.def_qos_parm.ac[i].edca_txop);
|
||||||
}
|
}
|
||||||
|
|
||||||
return simple_read_from_buffer(user_buf, count, ppos, buf, pos);
|
return simple_read_from_buffer(user_buf, count, ppos, buf, pos);
|
||||||
|
|
Loading…
Reference in a new issue