Skip to content

Commit

Permalink
iwlwifi: mvm: Add power management support for P2P DCM
Browse files Browse the repository at this point in the history
If two clients are active while each one is alone on its channel,
and the applicable flags are set, power management should be enabled.
This condition is referred to as Different Channel Mode (DCM).
Up to now, in DCM power management was supported only on BSS.
This patch adds support for P2P power management in DCM as well.

Signed-off-by: Avri Altman <avri.altman@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
  • Loading branch information
Avri Altman authored and Emmanuel Grumbach committed May 11, 2014
1 parent 723f02e commit 63ef81c
Showing 1 changed file with 7 additions and 3 deletions.
10 changes: 7 additions & 3 deletions drivers/net/wireless/iwlwifi/mvm/power.c
Original file line number Diff line number Diff line change
Expand Up @@ -613,11 +613,15 @@ iwl_mvm_power_set_pm(struct iwl_mvm *mvm,
ap_same_channel = (bss_mvmvif->phy_ctxt->id ==
ap_mvmvif->phy_ctxt->id);

/* bss is not stand alone: enable PM if alone on its channel */
if (vifs->bss_active && !(client_same_channel || ap_same_channel) &&
/* clients are not stand alone: enable PM if DCM */
if (!(client_same_channel || ap_same_channel) &&
(mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_BSS_P2P_PS_DCM)) {
if (vifs->bss_active)
bss_mvmvif->pm_enabled = true;
return;
if (vifs->p2p_active &&
(mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_P2P_PM))
p2p_mvmvif->pm_enabled = true;
return;
}

/*
Expand Down

0 comments on commit 63ef81c

Please sign in to comment.