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, 15 Sep 2014 08:10:42 +0300	[thread overview]
Message-ID: <1410757848-1827-6-git-send-email-egrumbach@gmail.com> (raw)
In-Reply-To: <5416742C.3070804@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-15  5:11 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-15  5:07 pull request: iwlwifi-next 2014-09-15 Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 01/12] iwlwifi: mvm: enable scheduled scan on newest firmware Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 02/12] iwlwifi: mvm: BT Coex - remove shadowing variable Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 03/12] iwlwifi: mvm: set MAC_FILTER_IN_BEACON correctly for STA/P2P client Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 04/12] iwlwifi: mvm: fix endianity issues with Smart Fifo commands Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 05/12] iwlwifi: increase DEFAULT_MAX_TX_POWER Emmanuel Grumbach
2014-09-15  5:10 ` Emmanuel Grumbach [this message]
2014-09-15  5:10 ` [PATCH 07/12] iwlwifi: mvm: treat EAPOLs like mgmt frames wrt rate Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 08/12] iwlwiwi: mvm: use bss_conf->dtim_period instead of conf.ps_dtim_period Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 09/12] iwlwifi: mvm: BT Coex - always initialize smps_mode Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 10/12] iwlwifi: dvm: disable power save by default Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 11/12] iwlwifi: add PCI IDs and add then new 3165 series Emmanuel Grumbach
2014-09-15  5:10 ` [PATCH 12/12] iwlwifi: mvm: fix an overflow in iwl_mvm_get_signal_strength Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 01/28] iwlwifi: mvm: add LDPC support Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 02/28] iwlwifi: add and edit 8000 series PCI IDs Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 03/28] iwlwifi: mvm: allow preventing dummy notifications Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 04/28] iwlwifi: enable LDPC in 8000 chip family Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 05/28] iwlwifi: mvm: rs: remove max_rate_idx Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 06/28] iwlwifi: mvm: reset ucode_loaded flag when mac80211 stop is called Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 07/28] iwlwifi: mvm: fail temp test enabling if the ucode is not loaded Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 08/28] iwlwifi: mvm: add MVM_FW_MCAST_FILTER_PASS_ALL option Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 09/28] iwlwifi: mvm: rs: don't zero tx stats after idle Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 10/28] iwlwifi: mvm: disable aggregation queues in station DB in FW Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 11/28] iwlwifi: trans: don't configure the set_active in SCD for dvm Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 12/28] iwlwifi: make hw rev checking more readable Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 13/28] iwlwifi: pcie: clear command data on freeing Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 14/28] iwlwifi: define the non shared antenna per hardware Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 15/28] iwlwifi: mvm: don't update quota in firmware too often Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 16/28] iwlwifi/iwl-drv.c: fix typo defualt -> default Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 17/28] iwlwifi: mvm: remove unused static inline function Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 18/28] iwlwifi: mvm: update d0i3 debugfs Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 19/28] iwlwifi: mvm: use the firmware to get the temperature during CT kill Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 20/28] iwlwifi: mvm: allow to collect debug data when restart is disabled Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 21/28] iwlwifi: mvm: fix quota update avoidance Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 22/28] iwlwifi: mvm: reduce active dwell time Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 23/28] iwlwifi: mvm: update QoS parameters when they change Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 24/28] iwlwifi: mvm: move TDLS code to separate file Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 25/28] iwlwifi: mvm: Fix skip over dtim configuration in d0i3 Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 26/28] iwlwifi: mvm: fix PSM disable during TDLS Emmanuel Grumbach
2014-09-15  5:12 ` [PATCH 27/28] iwlwifi: mvm: move IWL_MVM_UAPSD_QUEUES to constants.h Emmanuel Grumbach
2014-09-15  5:13 ` [PATCH 28/28] iwlwifi: mvm: align CSA GO NOA time event naming with the firmware Emmanuel Grumbach
2014-09-15 18:41 ` pull request: iwlwifi-next 2014-09-15 John W. Linville
  -- strict thread matches above, loose matches on Subject: below --
2014-09-08 16:54 pull request: iwlwifi 2014-09-08 Emmanuel Grumbach
2014-09-08 16:56 ` [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=1410757848-1827-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).