|
@@ -819,7 +819,7 @@ static u32 rs_get_lower_rate(struct iwl_lq_sta *lq_sta,
|
|
|
|
|
|
if (num_of_ant(tbl->ant_type) > 1)
|
|
|
tbl->ant_type =
|
|
|
- first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
|
|
|
tbl->is_ht40 = 0;
|
|
|
tbl->is_SGI = 0;
|
|
@@ -1291,7 +1291,7 @@ static int rs_switch_to_mimo2(struct iwl_priv *priv,
|
|
|
return -1;
|
|
|
|
|
|
/* Need both Tx chains/antennas to support MIMO */
|
|
|
- if (hw_params(priv).tx_chains_num < 2)
|
|
|
+ if (priv->hw_params.tx_chains_num < 2)
|
|
|
return -1;
|
|
|
|
|
|
IWL_DEBUG_RATE(priv, "LQ: try to switch to MIMO2\n");
|
|
@@ -1347,7 +1347,7 @@ static int rs_switch_to_mimo3(struct iwl_priv *priv,
|
|
|
return -1;
|
|
|
|
|
|
/* Need both Tx chains/antennas to support MIMO */
|
|
|
- if (hw_params(priv).tx_chains_num < 3)
|
|
|
+ if (priv->hw_params.tx_chains_num < 3)
|
|
|
return -1;
|
|
|
|
|
|
IWL_DEBUG_RATE(priv, "LQ: try to switch to MIMO3\n");
|
|
@@ -1446,8 +1446,8 @@ static int rs_move_legacy_other(struct iwl_priv *priv,
|
|
|
u32 sz = (sizeof(struct iwl_scale_tbl_info) -
|
|
|
(sizeof(struct iwl_rate_scale_data) * IWL_RATE_COUNT));
|
|
|
u8 start_action;
|
|
|
- u8 valid_tx_ant = hw_params(priv).valid_tx_ant;
|
|
|
- u8 tx_chains_num = hw_params(priv).tx_chains_num;
|
|
|
+ u8 valid_tx_ant = priv->hw_params.valid_tx_ant;
|
|
|
+ u8 tx_chains_num = priv->hw_params.tx_chains_num;
|
|
|
int ret = 0;
|
|
|
u8 update_search_tbl_counter = 0;
|
|
|
|
|
@@ -1464,7 +1464,7 @@ static int rs_move_legacy_other(struct iwl_priv *priv,
|
|
|
case IWL_BT_COEX_TRAFFIC_LOAD_CONTINUOUS:
|
|
|
/* avoid antenna B and MIMO */
|
|
|
valid_tx_ant =
|
|
|
- first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
if (tbl->action >= IWL_LEGACY_SWITCH_ANTENNA2 &&
|
|
|
tbl->action != IWL_LEGACY_SWITCH_SISO)
|
|
|
tbl->action = IWL_LEGACY_SWITCH_SISO;
|
|
@@ -1488,7 +1488,7 @@ static int rs_move_legacy_other(struct iwl_priv *priv,
|
|
|
else if (tbl->action >= IWL_LEGACY_SWITCH_ANTENNA2)
|
|
|
tbl->action = IWL_LEGACY_SWITCH_SISO;
|
|
|
valid_tx_ant =
|
|
|
- first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
}
|
|
|
|
|
|
start_action = tbl->action;
|
|
@@ -1622,8 +1622,8 @@ static int rs_move_siso_to_other(struct iwl_priv *priv,
|
|
|
u32 sz = (sizeof(struct iwl_scale_tbl_info) -
|
|
|
(sizeof(struct iwl_rate_scale_data) * IWL_RATE_COUNT));
|
|
|
u8 start_action;
|
|
|
- u8 valid_tx_ant = hw_params(priv).valid_tx_ant;
|
|
|
- u8 tx_chains_num = hw_params(priv).tx_chains_num;
|
|
|
+ u8 valid_tx_ant = priv->hw_params.valid_tx_ant;
|
|
|
+ u8 tx_chains_num = priv->hw_params.tx_chains_num;
|
|
|
u8 update_search_tbl_counter = 0;
|
|
|
int ret;
|
|
|
|
|
@@ -1640,7 +1640,7 @@ static int rs_move_siso_to_other(struct iwl_priv *priv,
|
|
|
case IWL_BT_COEX_TRAFFIC_LOAD_CONTINUOUS:
|
|
|
/* avoid antenna B and MIMO */
|
|
|
valid_tx_ant =
|
|
|
- first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
if (tbl->action != IWL_SISO_SWITCH_ANTENNA1)
|
|
|
tbl->action = IWL_SISO_SWITCH_ANTENNA1;
|
|
|
break;
|
|
@@ -1658,7 +1658,7 @@ static int rs_move_siso_to_other(struct iwl_priv *priv,
|
|
|
/* configure as 1x1 if bt full concurrency */
|
|
|
if (priv->bt_full_concurrent) {
|
|
|
valid_tx_ant =
|
|
|
- first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
if (tbl->action >= IWL_LEGACY_SWITCH_ANTENNA2)
|
|
|
tbl->action = IWL_SISO_SWITCH_ANTENNA1;
|
|
|
}
|
|
@@ -1794,8 +1794,8 @@ static int rs_move_mimo2_to_other(struct iwl_priv *priv,
|
|
|
u32 sz = (sizeof(struct iwl_scale_tbl_info) -
|
|
|
(sizeof(struct iwl_rate_scale_data) * IWL_RATE_COUNT));
|
|
|
u8 start_action;
|
|
|
- u8 valid_tx_ant = hw_params(priv).valid_tx_ant;
|
|
|
- u8 tx_chains_num = hw_params(priv).tx_chains_num;
|
|
|
+ u8 valid_tx_ant = priv->hw_params.valid_tx_ant;
|
|
|
+ u8 tx_chains_num = priv->hw_params.tx_chains_num;
|
|
|
u8 update_search_tbl_counter = 0;
|
|
|
int ret;
|
|
|
|
|
@@ -1964,8 +1964,8 @@ static int rs_move_mimo3_to_other(struct iwl_priv *priv,
|
|
|
u32 sz = (sizeof(struct iwl_scale_tbl_info) -
|
|
|
(sizeof(struct iwl_rate_scale_data) * IWL_RATE_COUNT));
|
|
|
u8 start_action;
|
|
|
- u8 valid_tx_ant = hw_params(priv).valid_tx_ant;
|
|
|
- u8 tx_chains_num = hw_params(priv).tx_chains_num;
|
|
|
+ u8 valid_tx_ant = priv->hw_params.valid_tx_ant;
|
|
|
+ u8 tx_chains_num = priv->hw_params.tx_chains_num;
|
|
|
int ret;
|
|
|
u8 update_search_tbl_counter = 0;
|
|
|
|
|
@@ -2698,7 +2698,7 @@ static void rs_initialize_lq(struct iwl_priv *priv,
|
|
|
|
|
|
i = lq_sta->last_txrate_idx;
|
|
|
|
|
|
- valid_tx_ant = hw_params(priv).valid_tx_ant;
|
|
|
+ valid_tx_ant = priv->hw_params.valid_tx_ant;
|
|
|
|
|
|
if (!lq_sta->search_better_tbl)
|
|
|
active_tbl = lq_sta->active_tbl;
|
|
@@ -2884,15 +2884,15 @@ void iwl_rs_rate_init(struct iwl_priv *priv, struct ieee80211_sta *sta, u8 sta_i
|
|
|
|
|
|
/* These values will be overridden later */
|
|
|
lq_sta->lq.general_params.single_stream_ant_msk =
|
|
|
- first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
lq_sta->lq.general_params.dual_stream_ant_msk =
|
|
|
- hw_params(priv).valid_tx_ant &
|
|
|
- ~first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ priv->hw_params.valid_tx_ant &
|
|
|
+ ~first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
if (!lq_sta->lq.general_params.dual_stream_ant_msk) {
|
|
|
lq_sta->lq.general_params.dual_stream_ant_msk = ANT_AB;
|
|
|
- } else if (num_of_ant(hw_params(priv).valid_tx_ant) == 2) {
|
|
|
+ } else if (num_of_ant(priv->hw_params.valid_tx_ant) == 2) {
|
|
|
lq_sta->lq.general_params.dual_stream_ant_msk =
|
|
|
- hw_params(priv).valid_tx_ant;
|
|
|
+ priv->hw_params.valid_tx_ant;
|
|
|
}
|
|
|
|
|
|
/* as default allow aggregation for all tids */
|
|
@@ -2938,7 +2938,7 @@ static void rs_fill_link_cmd(struct iwl_priv *priv,
|
|
|
if (priv && priv->bt_full_concurrent) {
|
|
|
/* 1x1 only */
|
|
|
tbl_type.ant_type =
|
|
|
- first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
}
|
|
|
|
|
|
/* How many times should we repeat the initial rate? */
|
|
@@ -2970,7 +2970,7 @@ static void rs_fill_link_cmd(struct iwl_priv *priv,
|
|
|
if (priv->bt_full_concurrent)
|
|
|
valid_tx_ant = ANT_A;
|
|
|
else
|
|
|
- valid_tx_ant = hw_params(priv).valid_tx_ant;
|
|
|
+ valid_tx_ant = priv->hw_params.valid_tx_ant;
|
|
|
}
|
|
|
|
|
|
/* Fill rest of rate table */
|
|
@@ -3004,7 +3004,7 @@ static void rs_fill_link_cmd(struct iwl_priv *priv,
|
|
|
if (priv && priv->bt_full_concurrent) {
|
|
|
/* 1x1 only */
|
|
|
tbl_type.ant_type =
|
|
|
- first_antenna(hw_params(priv).valid_tx_ant);
|
|
|
+ first_antenna(priv->hw_params.valid_tx_ant);
|
|
|
}
|
|
|
|
|
|
/* Indicate to uCode which entries might be MIMO.
|
|
@@ -3091,7 +3091,7 @@ static void rs_dbgfs_set_mcs(struct iwl_lq_sta *lq_sta,
|
|
|
u8 ant_sel_tx;
|
|
|
|
|
|
priv = lq_sta->drv;
|
|
|
- valid_tx_ant = hw_params(priv).valid_tx_ant;
|
|
|
+ valid_tx_ant = priv->hw_params.valid_tx_ant;
|
|
|
if (lq_sta->dbg_fixed_rate) {
|
|
|
ant_sel_tx =
|
|
|
((lq_sta->dbg_fixed_rate & RATE_MCS_ANT_ABC_MSK)
|
|
@@ -3162,9 +3162,9 @@ static ssize_t rs_sta_dbgfs_scale_table_read(struct file *file,
|
|
|
desc += sprintf(buff+desc, "fixed rate 0x%X\n",
|
|
|
lq_sta->dbg_fixed_rate);
|
|
|
desc += sprintf(buff+desc, "valid_tx_ant %s%s%s\n",
|
|
|
- (hw_params(priv).valid_tx_ant & ANT_A) ? "ANT_A," : "",
|
|
|
- (hw_params(priv).valid_tx_ant & ANT_B) ? "ANT_B," : "",
|
|
|
- (hw_params(priv).valid_tx_ant & ANT_C) ? "ANT_C" : "");
|
|
|
+ (priv->hw_params.valid_tx_ant & ANT_A) ? "ANT_A," : "",
|
|
|
+ (priv->hw_params.valid_tx_ant & ANT_B) ? "ANT_B," : "",
|
|
|
+ (priv->hw_params.valid_tx_ant & ANT_C) ? "ANT_C" : "");
|
|
|
desc += sprintf(buff+desc, "lq type %s\n",
|
|
|
(is_legacy(tbl->lq_type)) ? "legacy" : "HT");
|
|
|
if (is_Ht(tbl->lq_type)) {
|