diff options
author | Eliad Peller | 2014-12-09 14:23:54 +0100 |
---|---|---|
committer | Emmanuel Grumbach | 2014-12-28 19:00:20 +0100 |
commit | 6735943fafeaf55223b8704e52568b89ac3129e3 (patch) | |
tree | 14479a25d72d9ff6fbc323fc6e22dbc71a9b0ddc /drivers/net/wireless/iwlwifi/mvm/mac80211.c | |
parent | iwlwifi: support multiple d0i3 modes (diff) | |
download | kernel-qcow2-linux-6735943fafeaf55223b8704e52568b89ac3129e3.tar.gz kernel-qcow2-linux-6735943fafeaf55223b8704e52568b89ac3129e3.tar.xz kernel-qcow2-linux-6735943fafeaf55223b8704e52568b89ac3129e3.zip |
iwlwifi: mvm: support IWL_D0I3_MODE_ON_SUSPEND d0i3 mode
Enter d0i3 on suspend, and exit d0i3. Wait for the
command responses in both cases.
Use this mode in case of pcie trans.
Signed-off-by: Eliad Peller <eliadx.peller@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/mvm/mac80211.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/mvm/mac80211.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c index fd0f8ce0f79d..29f0feb1dbd2 100644 --- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c +++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c @@ -1021,6 +1021,13 @@ static void iwl_mvm_resume_complete(struct iwl_mvm *mvm) IWL_DEBUG_RPM(mvm, "Run deferred d0i3 exit\n"); _iwl_mvm_exit_d0i3(mvm); } + + if (mvm->trans->d0i3_mode == IWL_D0I3_MODE_ON_SUSPEND) + if (!wait_event_timeout(mvm->d0i3_exit_waitq, + !test_bit(IWL_MVM_STATUS_IN_D0I3, + &mvm->status), + HZ)) + WARN_ONCE(1, "D0i3 exit on resume timed out\n"); } static void |