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

Commit c15d20c1 authored by Wey-Yi Guy's avatar Wey-Yi Guy Committed by John W. Linville
Browse files

iwlwifi: set sm_ps_mode as part of cfg parameters



Setting "Spatial multiplexing Power Save" as part of
per device configuration parameter.

Report to uCode based on priv->conf setting, so driver can
have more control of how different devices should operate
in power save mode.

Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent d5f4cf71
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -173,6 +173,7 @@ struct iwl_cfg iwl1000_bgn_cfg = {
	.use_rts_for_ht = true, /* use rts/cts protection */
	.chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
	.support_ct_kill_exit = true,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
};

struct iwl_cfg iwl1000_bg_cfg = {
+1 −0
Original line number Diff line number Diff line
@@ -2238,6 +2238,7 @@ struct iwl_cfg iwl4965_agn_cfg = {
	.broken_powersave = true,
	.led_compensation = 61,
	.chain_noise_num_beacons = IWL4965_CAL_NUM_BEACONS,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
};

/* Module firmware */
+4 −0
Original line number Diff line number Diff line
@@ -1597,6 +1597,7 @@ struct iwl_cfg iwl5300_agn_cfg = {
	.ht_greenfield_support = true,
	.led_compensation = 51,
	.chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
};

struct iwl_cfg iwl5100_bg_cfg = {
@@ -1666,6 +1667,7 @@ struct iwl_cfg iwl5100_agn_cfg = {
	.ht_greenfield_support = true,
	.led_compensation = 51,
	.chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
};

struct iwl_cfg iwl5350_agn_cfg = {
@@ -1689,6 +1691,7 @@ struct iwl_cfg iwl5350_agn_cfg = {
	.ht_greenfield_support = true,
	.led_compensation = 51,
	.chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
};

struct iwl_cfg iwl5150_agn_cfg = {
@@ -1712,6 +1715,7 @@ struct iwl_cfg iwl5150_agn_cfg = {
	.ht_greenfield_support = true,
	.led_compensation = 51,
	.chain_noise_num_beacons = IWL_CAL_NUM_BEACONS,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
};

MODULE_FIRMWARE(IWL5000_MODULE_FIRMWARE(IWL5000_UCODE_API_MAX));
+3 −1
Original line number Diff line number Diff line
@@ -306,6 +306,7 @@ struct iwl_cfg iwl6000i_2agn_cfg = {
	.supports_idle = true,
	.adv_thermal_throttle = true,
	.support_ct_kill_exit = true,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
};

struct iwl_cfg iwl6000i_2abg_cfg = {
@@ -394,7 +395,7 @@ struct iwl_cfg iwl6050_2agn_cfg = {
	.supports_idle = true,
	.adv_thermal_throttle = true,
	.support_ct_kill_exit = true,
	.support_sm_ps = true,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DYNAMIC,
};

struct iwl_cfg iwl6050_2abg_cfg = {
@@ -454,6 +455,7 @@ struct iwl_cfg iwl6000_3agn_cfg = {
	.supports_idle = true,
	.adv_thermal_throttle = true,
	.support_ct_kill_exit = true,
	.sm_ps_mode = WLAN_HT_CAP_SM_PS_DISABLED,
};

MODULE_FIRMWARE(IWL6000_MODULE_FIRMWARE(IWL6000_UCODE_API_MAX));
+0 −4
Original line number Diff line number Diff line
@@ -3135,10 +3135,6 @@ static int iwl_init_drv(struct iwl_priv *priv)
	priv->band = IEEE80211_BAND_2GHZ;

	priv->iw_mode = NL80211_IFTYPE_STATION;
	if (priv->cfg->support_sm_ps)
		priv->current_ht_config.sm_ps = WLAN_HT_CAP_SM_PS_DYNAMIC;
	else
		priv->current_ht_config.sm_ps = WLAN_HT_CAP_SM_PS_DISABLED;

	/* Choose which receivers/antennas to use */
	if (priv->cfg->ops->hcmd->set_rxon_chain)
Loading