Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 36e1f16e authored by Ron Rindjunsky's avatar Ron Rindjunsky Committed by John W. Linville
Browse files

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: default avatarRon Rindjunsky <ron.rindjunsky@intel.com>
Signed-off-by: default avatarTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: default avatarZhu Yi <yi.zhu@intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 0c70515f
Loading
Loading
Loading
Loading
+1 −18
Original line number Diff line number Diff line
@@ -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;

	if (!priv->lq_mngr.lq_ready)
		goto out;

	if ((priv->iw_mode == IEEE80211_IF_TYPE_IBSS) &&
	    !lq_sta->ibss_sta_added)
		goto out;
@@ -1678,10 +1675,6 @@ static void rs_rate_scale_perform(struct iwl_priv *priv,
	if (!sta || !sta->rate_ctrl_priv)
		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;

	tid = rs_tl_add_packet(lq_sta, hdr);
@@ -2279,9 +2272,6 @@ static void rs_rate_init(void *priv_rate, void *priv_sta,
	lq_sta->drv = priv;
#endif

	if (priv->assoc_station_added)
		priv->lq_mngr.lq_ready = 1;

	rs_initialize_lq(priv, conf, sta);
}

@@ -2421,7 +2411,7 @@ static void rs_clear(void *priv_rate)

	IWL_DEBUG_RATE("enter\n");

	priv->lq_mngr.lq_ready = 0;
	/* TODO - add rate scale state reset */

	IWL_DEBUG_RATE("leave\n");
}
@@ -2716,13 +2706,6 @@ int iwl4965_fill_rs_info(struct ieee80211_hw *hw, char *buf, u8 sta_id)
	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)
{
	return ieee80211_rate_control_register(&rs_ops);
+0 −8
Original line number Diff line number Diff line
@@ -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);

/**
 * 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
 *
+0 −1
Original line number Diff line number Diff line
@@ -693,7 +693,6 @@ struct iwl4965_lq_mngr {
	unsigned long stamp_last;
	u32 flush_time;
	u32 tx_packets;
	u8 lq_ready;
};

/* Sensitivity and chain noise calibration */
+1 −2
Original line number Diff line number Diff line
@@ -825,8 +825,7 @@ int iwl_send_lq_cmd(struct iwl_priv *priv,

	iwl_dump_lq_cmd(priv,lq);

	if (iwl_is_associated(priv) && priv->assoc_station_added &&
	    priv->lq_mngr.lq_ready)
	if (iwl_is_associated(priv) && priv->assoc_station_added)
		return  iwl_send_cmd(priv, &cmd);

	return 0;
+0 −3
Original line number Diff line number Diff line
@@ -2483,7 +2483,6 @@ static void iwl4965_post_associate(struct iwl_priv *priv)

	switch (priv->iw_mode) {
	case IEEE80211_IF_TYPE_STA:
		iwl4965_rate_scale_init(priv->hw, IWL_AP_ID);
		break;

	case IEEE80211_IF_TYPE_IBSS:
@@ -2492,7 +2491,6 @@ static void iwl4965_post_associate(struct iwl_priv *priv)
		priv->assoc_id = 1;

		iwl_rxon_add_station(priv, priv->bssid, 0);
		iwl4965_rate_scale_init(priv->hw, IWL_STA_ID);
		iwl4965_send_beacon_cmd(priv);

		break;
@@ -3425,7 +3423,6 @@ static void iwl4965_mac_reset_tsf(struct ieee80211_hw *hw)
	mutex_lock(&priv->mutex);
	IWL_DEBUG_MAC80211("enter\n");

	priv->lq_mngr.lq_ready = 0;
	spin_lock_irqsave(&priv->lock, flags);
	memset(&priv->current_ht_config, 0, sizeof(struct iwl_ht_info));
	spin_unlock_irqrestore(&priv->lock, flags);