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

Commit b5d7be5e authored by Tomas Winkler's avatar Tomas Winkler Committed by John W. Linville
Browse files

iwlwifi: use dtim_period from association, and set listen_interval



This patch uses dtim_period from association, and sets the listen_interval.

Signed-off-by: default avatarTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent e170402e
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -666,8 +666,7 @@ struct iwl4965_rxon_assoc_cmd {
	__le16 reserved;
} __attribute__ ((packed));



#define IWL_CONN_MAX_LISTEN_INTERVAL	10

/*
 * REPLY_RXON_TIMING = 0x14 (command, has simple generic response)
+1 −0
Original line number Diff line number Diff line
@@ -827,6 +827,7 @@ int iwl_setup_mac(struct iwl_priv *priv)
		hw->ampdu_queues = priv->cfg->mod_params->num_of_ampdu_queues;

	hw->conf.beacon_int = 100;
	hw->max_listen_interval = IWL_CONN_MAX_LISTEN_INTERVAL;

	if (priv->bands[IEEE80211_BAND_2GHZ].n_channels)
		priv->hw->wiphy->bands[IEEE80211_BAND_2GHZ] =
+3 −2
Original line number Diff line number Diff line
@@ -639,7 +639,6 @@ static void iwl_activate_qos(struct iwl_priv *priv, u8 force)
}

#define MAX_UCODE_BEACON_INTERVAL	4096
#define INTEL_CONN_LISTEN_INTERVAL	__constant_cpu_to_le16(0xA)

static __le16 iwl4965_adjust_beacon_interval(u16 beacon_val)
{
@@ -669,7 +668,7 @@ static void iwl4965_setup_rxon_timing(struct iwl_priv *priv)
	priv->rxon_timing.timestamp.dw[0] =
				cpu_to_le32(priv->timestamp & 0xFFFFFFFF);

	priv->rxon_timing.listen_interval = INTEL_CONN_LISTEN_INTERVAL;
	priv->rxon_timing.listen_interval = cpu_to_le16(conf->listen_interval);

	tsf = priv->timestamp;

@@ -2835,6 +2834,7 @@ static int iwl4965_mac_config(struct ieee80211_hw *hw, struct ieee80211_conf *co

	spin_lock_irqsave(&priv->lock, flags);


	/* if we are switching from ht to 2.4 clear flags
	 * from any ht related info since 2.4 does not
	 * support ht */
@@ -3164,6 +3164,7 @@ static void iwl4965_bss_info_changed(struct ieee80211_hw *hw,
		if (bss_conf->assoc) {
			priv->assoc_id = bss_conf->aid;
			priv->beacon_int = bss_conf->beacon_int;
			priv->power_data.dtim_period = bss_conf->dtim_period;
			priv->timestamp = bss_conf->timestamp;
			priv->assoc_capability = bss_conf->assoc_capability;
			priv->next_scan_jiffies = jiffies +