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

Commit a6a0345c authored by Johannes Berg's avatar Johannes Berg Committed by Reinette Chatre
Browse files

iwlwifi: split allocation/sending local station LQ



Rename iwl_sta_init_lq to iwl_sta_alloc_lq and
move sending it out into the caller.

Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
parent 156b70d1
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -407,13 +407,12 @@ int iwl_add_station_common(struct iwl_priv *priv, const u8 *addr,
}
EXPORT_SYMBOL(iwl_add_station_common);

static struct iwl_link_quality_cmd *iwl_sta_init_lq(struct iwl_priv *priv,
static struct iwl_link_quality_cmd *iwl_sta_alloc_lq(struct iwl_priv *priv,
						     u8 sta_id)
{
	int i, r;
	struct iwl_link_quality_cmd *link_cmd;
	u32 rate_flags;
	int ret = 0;

	link_cmd = kzalloc(sizeof(struct iwl_link_quality_cmd), GFP_KERNEL);
	if (!link_cmd) {
@@ -459,10 +458,6 @@ static struct iwl_link_quality_cmd *iwl_sta_init_lq(struct iwl_priv *priv,

	link_cmd->sta_id = sta_id;

	ret = iwl_send_lq_cmd(priv, link_cmd, CMD_SYNC, true);
	if (ret)
		IWL_ERR(priv, "Link quality command failed (%d)\n", ret);

	return link_cmd;
}

@@ -493,12 +488,17 @@ int iwl_add_local_station(struct iwl_priv *priv, const u8 *addr, bool init_rs)

	if (init_rs) {
		/* Set up default rate scaling table in device's station table */
		link_cmd = iwl_sta_init_lq(priv, sta_id);
		link_cmd = iwl_sta_alloc_lq(priv, sta_id);
		if (!link_cmd) {
			IWL_ERR(priv, "Unable to initialize rate scaling for station %pM.\n",
				addr);
			return -ENOMEM;
		}

		ret = iwl_send_lq_cmd(priv, link_cmd, CMD_SYNC, true);
		if (ret)
			IWL_ERR(priv, "Link quality command failed (%d)\n", ret);

		spin_lock_irqsave(&priv->sta_lock, flags);
		priv->stations[sta_id].lq = link_cmd;
		spin_unlock_irqrestore(&priv->sta_lock, flags);