linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Emmanuel Grumbach <egrumbach@gmail.com>
To: linux-wireless@vger.kernel.org
Cc: Johannes Berg <johannes.berg@intel.com>,
	Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Subject: [PATCH 06/12] iwlwifi: mvm: correctly handle PM/QoS changes from mac80211
Date: Mon,  8 Sep 2014 19:56:11 +0300	[thread overview]
Message-ID: <1410195377-10075-6-git-send-email-egrumbach@gmail.com> (raw)
In-Reply-To: <540DDF37.5030801@gmail.com>

From: Johannes Berg <johannes.berg@intel.com>

When mac80211 requests multiple BSS config changes, as for example
while associating, we ignore power management and QoS changes and
only apply them later. Fix that by removing the "else" and making
the conditions independent.

Also move it after (potential) beacon filter enablement to have
that already enabled when going into power management code.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
---
 drivers/net/wireless/iwlwifi/mvm/mac80211.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
index c4000a1..cdc272d 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -1526,11 +1526,6 @@ static void iwl_mvm_bss_info_changed_station(struct iwl_mvm *mvm,
 		 */
 		iwl_mvm_remove_time_event(mvm, mvmvif,
 					  &mvmvif->time_event_data);
-	} else if (changes & (BSS_CHANGED_PS | BSS_CHANGED_P2P_PS |
-			      BSS_CHANGED_QOS)) {
-		ret = iwl_mvm_power_update_mac(mvm);
-		if (ret)
-			IWL_ERR(mvm, "failed to update power mode\n");
 	}
 
 	if (changes & BSS_CHANGED_BEACON_INFO) {
@@ -1538,6 +1533,12 @@ static void iwl_mvm_bss_info_changed_station(struct iwl_mvm *mvm,
 		WARN_ON(iwl_mvm_enable_beacon_filter(mvm, vif, 0));
 	}
 
+	if (changes & (BSS_CHANGED_PS | BSS_CHANGED_P2P_PS | BSS_CHANGED_QOS)) {
+		ret = iwl_mvm_power_update_mac(mvm);
+		if (ret)
+			IWL_ERR(mvm, "failed to update power mode\n");
+	}
+
 	if (changes & BSS_CHANGED_TXPOWER) {
 		IWL_DEBUG_CALIB(mvm, "Changing TX Power to %d\n",
 				bss_conf->txpower);
-- 
1.9.1


  parent reply	other threads:[~2014-09-08 16:56 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-08 16:54 pull request: iwlwifi 2014-09-08 Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 01/12] iwlwifi: mvm: enable scheduled scan on newest firmware Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 02/12] iwlwifi: mvm: BT Coex - remove shadowing variable Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 03/12] iwlwifi: mvm: set MAC_FILTER_IN_BEACON correctly for STA/P2P client Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 04/12] iwlwifi: mvm: fix endianity issues with Smart Fifo commands Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 05/12] iwlwifi: increase DEFAULT_MAX_TX_POWER Emmanuel Grumbach
2014-09-08 16:56 ` Emmanuel Grumbach [this message]
2014-09-08 16:56 ` [PATCH 07/12] iwlwifi: mvm: treat EAPOLs like mgmt frames wrt rate Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 08/12] iwlwiwi: mvm: use bss_conf->dtim_period instead of conf.ps_dtim_period Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 09/12] iwlwifi: mvm: BT Coex - always initialize smps_mode Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 10/12] iwlwifi: dvm: disable power save by default Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 11/12] iwlwifi: add PCI IDs and add then new 3165 series Emmanuel Grumbach
2014-09-08 16:56 ` [PATCH 12/12] iwlwifi: mvm: fix an overflow in iwl_mvm_get_signal_strength Emmanuel Grumbach
2014-09-09 19:01 ` pull request: iwlwifi 2014-09-08 John W. Linville
2014-09-15  5:07 pull request: iwlwifi-next 2014-09-15 Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 06/12] iwlwifi: mvm: correctly handle PM/QoS changes from mac80211 Emmanuel Grumbach

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1410195377-10075-6-git-send-email-egrumbach@gmail.com \
    --to=egrumbach@gmail.com \
    --cc=emmanuel.grumbach@intel.com \
    --cc=johannes.berg@intel.com \
    --cc=linux-wireless@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).