diff options
author | Johannes Berg <johannes.berg@intel.com> | 2014-09-08 10:42:54 -0400 |
---|---|---|
committer | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2014-09-14 05:56:40 -0400 |
commit | b2b7875bfb6c69bb708b61c5f745491d240161a1 (patch) | |
tree | 96a4defff20dfee2724407355493b9705f7a5667 /drivers/net/wireless/iwlwifi/mvm/fw.c | |
parent | bbab758279a14556e6ccb17b1f98935634eeb8d5 (diff) |
iwlwifi: mvm: don't update quota in firmware too often
When updating quota in the firmware, it has to reset quite a bit
of internal state, which apparently can have an adverse impact on
its operation.
Avoid that by only updating the quota command when there are any
signification changes, i.e. added/removed bindings or changes in
quota that are bigger than 8 TU within a binding.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/mvm/fw.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/mvm/fw.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/fw.c b/drivers/net/wireless/iwlwifi/mvm/fw.c index 21d606028ca6..23fd711a67e4 100644 --- a/drivers/net/wireless/iwlwifi/mvm/fw.c +++ b/drivers/net/wireless/iwlwifi/mvm/fw.c | |||
@@ -454,6 +454,9 @@ int iwl_mvm_up(struct iwl_mvm *mvm) | |||
454 | for (i = 0; i < IWL_MVM_STATION_COUNT; i++) | 454 | for (i = 0; i < IWL_MVM_STATION_COUNT; i++) |
455 | RCU_INIT_POINTER(mvm->fw_id_to_mac_id[i], NULL); | 455 | RCU_INIT_POINTER(mvm->fw_id_to_mac_id[i], NULL); |
456 | 456 | ||
457 | /* reset quota debouncing buffer - 0xff will yield invalid data */ | ||
458 | memset(&mvm->last_quota_cmd, 0xff, sizeof(mvm->last_quota_cmd)); | ||
459 | |||
457 | /* Add auxiliary station for scanning */ | 460 | /* Add auxiliary station for scanning */ |
458 | ret = iwl_mvm_add_aux_sta(mvm); | 461 | ret = iwl_mvm_add_aux_sta(mvm); |
459 | if (ret) | 462 | if (ret) |