iwlwiwi: mvm: use bss_conf->dtim_period instead of conf.ps_dtim_period
The latter is meant for software implementation of power save and is not per-virtual interface. Since our driver supports multiple virtual interfaces, we need to use vif->bss_conf.dtim_period. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
This commit is contained in:
parent
aa11bbf3df
commit
717e2390dc
2 changed files with 3 additions and 5 deletions
|
@ -74,8 +74,7 @@ static void iwl_dbgfs_update_pm(struct iwl_mvm *mvm,
|
||||||
|
|
||||||
switch (param) {
|
switch (param) {
|
||||||
case MVM_DEBUGFS_PM_KEEP_ALIVE: {
|
case MVM_DEBUGFS_PM_KEEP_ALIVE: {
|
||||||
struct ieee80211_hw *hw = mvm->hw;
|
int dtimper = vif->bss_conf.dtim_period ?: 1;
|
||||||
int dtimper = hw->conf.ps_dtim_period ?: 1;
|
|
||||||
int dtimper_msec = dtimper * vif->bss_conf.beacon_int;
|
int dtimper_msec = dtimper * vif->bss_conf.beacon_int;
|
||||||
|
|
||||||
IWL_DEBUG_POWER(mvm, "debugfs: set keep_alive= %d sec\n", val);
|
IWL_DEBUG_POWER(mvm, "debugfs: set keep_alive= %d sec\n", val);
|
||||||
|
|
|
@ -281,7 +281,6 @@ static void iwl_mvm_power_build_cmd(struct iwl_mvm *mvm,
|
||||||
struct ieee80211_vif *vif,
|
struct ieee80211_vif *vif,
|
||||||
struct iwl_mac_power_cmd *cmd)
|
struct iwl_mac_power_cmd *cmd)
|
||||||
{
|
{
|
||||||
struct ieee80211_hw *hw = mvm->hw;
|
|
||||||
struct ieee80211_chanctx_conf *chanctx_conf;
|
struct ieee80211_chanctx_conf *chanctx_conf;
|
||||||
struct ieee80211_channel *chan;
|
struct ieee80211_channel *chan;
|
||||||
int dtimper, dtimper_msec;
|
int dtimper, dtimper_msec;
|
||||||
|
@ -292,7 +291,7 @@ static void iwl_mvm_power_build_cmd(struct iwl_mvm *mvm,
|
||||||
|
|
||||||
cmd->id_and_color = cpu_to_le32(FW_CMD_ID_AND_COLOR(mvmvif->id,
|
cmd->id_and_color = cpu_to_le32(FW_CMD_ID_AND_COLOR(mvmvif->id,
|
||||||
mvmvif->color));
|
mvmvif->color));
|
||||||
dtimper = hw->conf.ps_dtim_period ?: 1;
|
dtimper = vif->bss_conf.dtim_period;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Regardless of power management state the driver must set
|
* Regardless of power management state the driver must set
|
||||||
|
@ -885,7 +884,7 @@ int iwl_mvm_update_d0i3_power_mode(struct iwl_mvm *mvm,
|
||||||
iwl_mvm_power_build_cmd(mvm, vif, &cmd);
|
iwl_mvm_power_build_cmd(mvm, vif, &cmd);
|
||||||
if (enable) {
|
if (enable) {
|
||||||
/* configure skip over dtim up to 300 msec */
|
/* configure skip over dtim up to 300 msec */
|
||||||
int dtimper = mvm->hw->conf.ps_dtim_period ?: 1;
|
int dtimper = vif->bss_conf.dtim_period ?: 1;
|
||||||
int dtimper_msec = dtimper * vif->bss_conf.beacon_int;
|
int dtimper_msec = dtimper * vif->bss_conf.beacon_int;
|
||||||
|
|
||||||
if (WARN_ON(!dtimper_msec))
|
if (WARN_ON(!dtimper_msec))
|
||||||
|
|
Loading…
Add table
Reference in a new issue