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

Commit 4834c73f authored by Ron Rindjunsky's avatar Ron Rindjunsky Committed by John W. Linville
Browse files

iwlwifi: fix station mimo power save values



This patch fixes the wrong use MIMO power save values. Our TX was
configured with our MIMO power save values instead of peer's MIMO power
save values, this may affect connectivity. The peer STA/AP may not sense
our traffic at all as it doesn't have all RX chains opened.

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 54559703
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1153,7 +1153,8 @@ static int rs_switch_to_mimo2(struct iwl_priv *priv,
	    !sta->ht_info.ht_supported)
		return -1;

	if (priv->current_ht_config.tx_mimo_ps_mode == IWL_MIMO_PS_STATIC)
	if (((sta->ht_info.cap & IEEE80211_HT_CAP_MIMO_PS) >> 2)
						== IWL_MIMO_PS_STATIC)
		return -1;

	/* Need both Tx chains/antennas to support MIMO */
+0 −2
Original line number Diff line number Diff line
@@ -586,8 +586,6 @@ static void iwl4965_ht_conf(struct iwl_priv *priv,
		iwl_conf->supported_chan_width = 0;
	}

	iwl_conf->tx_mimo_ps_mode =
		(u8)((ht_conf->cap & IEEE80211_HT_CAP_MIMO_PS) >> 2);
	memcpy(iwl_conf->supp_mcs_set, ht_conf->supp_mcs_set, 16);

	iwl_conf->control_channel = ht_bss_conf->primary_channel;
+0 −1
Original line number Diff line number Diff line
@@ -412,7 +412,6 @@ struct iwl_ht_info {
	/* self configuration data */
	u8 is_ht;
	u8 supported_chan_width;
	u16 tx_mimo_ps_mode;
	u8 is_green_field;
	u8 sgf;			/* HT_SHORT_GI_* short guard interval */
	u8 max_amsdu_size;