提交 36e1f16e 编写于 作者: R Ron Rindjunsky 提交者: John W. Linville

iwlwifi: remove obsolete lq_ready use

This patch removes the use of lq_ready, once used to sync between link
quality commands to avoid race conditions, but no longer needed as
bss_info_changed is in use.
Signed-off-by: NRon Rindjunsky <ron.rindjunsky@intel.com>
Signed-off-by: NTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: NZhu Yi <yi.zhu@intel.com>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 0c70515f
...@@ -822,9 +822,6 @@ static void rs_tx_status(void *priv_rate, struct net_device *dev, ...@@ -822,9 +822,6 @@ static void rs_tx_status(void *priv_rate, struct net_device *dev,
lq_sta = (struct iwl4965_lq_sta *)sta->rate_ctrl_priv; lq_sta = (struct iwl4965_lq_sta *)sta->rate_ctrl_priv;
if (!priv->lq_mngr.lq_ready)
goto out;
if ((priv->iw_mode == IEEE80211_IF_TYPE_IBSS) && if ((priv->iw_mode == IEEE80211_IF_TYPE_IBSS) &&
!lq_sta->ibss_sta_added) !lq_sta->ibss_sta_added)
goto out; goto out;
...@@ -1678,10 +1675,6 @@ static void rs_rate_scale_perform(struct iwl_priv *priv, ...@@ -1678,10 +1675,6 @@ static void rs_rate_scale_perform(struct iwl_priv *priv,
if (!sta || !sta->rate_ctrl_priv) if (!sta || !sta->rate_ctrl_priv)
return; return;
if (!priv->lq_mngr.lq_ready) {
IWL_DEBUG_RATE("still rate scaling not ready\n");
return;
}
lq_sta = (struct iwl4965_lq_sta *)sta->rate_ctrl_priv; lq_sta = (struct iwl4965_lq_sta *)sta->rate_ctrl_priv;
tid = rs_tl_add_packet(lq_sta, hdr); tid = rs_tl_add_packet(lq_sta, hdr);
...@@ -2279,9 +2272,6 @@ static void rs_rate_init(void *priv_rate, void *priv_sta, ...@@ -2279,9 +2272,6 @@ static void rs_rate_init(void *priv_rate, void *priv_sta,
lq_sta->drv = priv; lq_sta->drv = priv;
#endif #endif
if (priv->assoc_station_added)
priv->lq_mngr.lq_ready = 1;
rs_initialize_lq(priv, conf, sta); rs_initialize_lq(priv, conf, sta);
} }
...@@ -2421,7 +2411,7 @@ static void rs_clear(void *priv_rate) ...@@ -2421,7 +2411,7 @@ static void rs_clear(void *priv_rate)
IWL_DEBUG_RATE("enter\n"); IWL_DEBUG_RATE("enter\n");
priv->lq_mngr.lq_ready = 0; /* TODO - add rate scale state reset */
IWL_DEBUG_RATE("leave\n"); IWL_DEBUG_RATE("leave\n");
} }
...@@ -2716,13 +2706,6 @@ int iwl4965_fill_rs_info(struct ieee80211_hw *hw, char *buf, u8 sta_id) ...@@ -2716,13 +2706,6 @@ int iwl4965_fill_rs_info(struct ieee80211_hw *hw, char *buf, u8 sta_id)
return cnt; return cnt;
} }
void iwl4965_rate_scale_init(struct ieee80211_hw *hw, s32 sta_id)
{
struct iwl_priv *priv = hw->priv;
priv->lq_mngr.lq_ready = 1;
}
int iwl4965_rate_control_register(void) int iwl4965_rate_control_register(void)
{ {
return ieee80211_rate_control_register(&rs_ops); return ieee80211_rate_control_register(&rs_ops);
......
...@@ -295,14 +295,6 @@ static inline u8 iwl4965_get_prev_ieee_rate(u8 rate_index) ...@@ -295,14 +295,6 @@ static inline u8 iwl4965_get_prev_ieee_rate(u8 rate_index)
*/ */
extern int iwl4965_fill_rs_info(struct ieee80211_hw *, char *buf, u8 sta_id); extern int iwl4965_fill_rs_info(struct ieee80211_hw *, char *buf, u8 sta_id);
/**
* iwl4965_rate_scale_init - Initialize the rate scale table based on assoc info
*
* The specific throughput table used is based on the type of network
* the associated with, including A, B, G, and G w/ TGG protection
*/
extern void iwl4965_rate_scale_init(struct ieee80211_hw *hw, s32 sta_id);
/** /**
* iwl4965_rate_control_register - Register the rate control algorithm callbacks * iwl4965_rate_control_register - Register the rate control algorithm callbacks
* *
......
...@@ -693,7 +693,6 @@ struct iwl4965_lq_mngr { ...@@ -693,7 +693,6 @@ struct iwl4965_lq_mngr {
unsigned long stamp_last; unsigned long stamp_last;
u32 flush_time; u32 flush_time;
u32 tx_packets; u32 tx_packets;
u8 lq_ready;
}; };
/* Sensitivity and chain noise calibration */ /* Sensitivity and chain noise calibration */
......
...@@ -825,8 +825,7 @@ int iwl_send_lq_cmd(struct iwl_priv *priv, ...@@ -825,8 +825,7 @@ int iwl_send_lq_cmd(struct iwl_priv *priv,
iwl_dump_lq_cmd(priv,lq); iwl_dump_lq_cmd(priv,lq);
if (iwl_is_associated(priv) && priv->assoc_station_added && if (iwl_is_associated(priv) && priv->assoc_station_added)
priv->lq_mngr.lq_ready)
return iwl_send_cmd(priv, &cmd); return iwl_send_cmd(priv, &cmd);
return 0; return 0;
......
...@@ -2483,7 +2483,6 @@ static void iwl4965_post_associate(struct iwl_priv *priv) ...@@ -2483,7 +2483,6 @@ static void iwl4965_post_associate(struct iwl_priv *priv)
switch (priv->iw_mode) { switch (priv->iw_mode) {
case IEEE80211_IF_TYPE_STA: case IEEE80211_IF_TYPE_STA:
iwl4965_rate_scale_init(priv->hw, IWL_AP_ID);
break; break;
case IEEE80211_IF_TYPE_IBSS: case IEEE80211_IF_TYPE_IBSS:
...@@ -2492,7 +2491,6 @@ static void iwl4965_post_associate(struct iwl_priv *priv) ...@@ -2492,7 +2491,6 @@ static void iwl4965_post_associate(struct iwl_priv *priv)
priv->assoc_id = 1; priv->assoc_id = 1;
iwl_rxon_add_station(priv, priv->bssid, 0); iwl_rxon_add_station(priv, priv->bssid, 0);
iwl4965_rate_scale_init(priv->hw, IWL_STA_ID);
iwl4965_send_beacon_cmd(priv); iwl4965_send_beacon_cmd(priv);
break; break;
...@@ -3425,7 +3423,6 @@ static void iwl4965_mac_reset_tsf(struct ieee80211_hw *hw) ...@@ -3425,7 +3423,6 @@ static void iwl4965_mac_reset_tsf(struct ieee80211_hw *hw)
mutex_lock(&priv->mutex); mutex_lock(&priv->mutex);
IWL_DEBUG_MAC80211("enter\n"); IWL_DEBUG_MAC80211("enter\n");
priv->lq_mngr.lq_ready = 0;
spin_lock_irqsave(&priv->lock, flags); spin_lock_irqsave(&priv->lock, flags);
memset(&priv->current_ht_config, 0, sizeof(struct iwl_ht_info)); memset(&priv->current_ht_config, 0, sizeof(struct iwl_ht_info));
spin_unlock_irqrestore(&priv->lock, flags); spin_unlock_irqrestore(&priv->lock, flags);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册