diff options
author | Luca Coelho <luciano.coelho@intel.com> | 2017-11-10 14:03:36 +0200 |
---|---|---|
committer | Luca Coelho <luciano.coelho@intel.com> | 2017-11-15 18:38:42 +0200 |
commit | dac4df1c5f2c34903f61b1bc4fc722e31b4199e7 (patch) | |
tree | 27a2a7c8ca5eb4f3839c2c0691884ed3b329d775 /drivers/net/wireless/intel/iwlwifi/mvm/mvm.h | |
parent | fdd0bd88ceaecf729db103ac8836af5805dd2dc1 (diff) | |
download | linux-dac4df1c5f2c34903f61b1bc4fc722e31b4199e7.tar.gz linux-dac4df1c5f2c34903f61b1bc4fc722e31b4199e7.tar.bz2 linux-dac4df1c5f2c34903f61b1bc4fc722e31b4199e7.zip |
iwlwifi: mvm: support version 7 of the SCAN_REQ_UMAC FW command
Newer firmware versions (such as iwlwifi-8000C-34.ucode) have
introduced an API change in the SCAN_REQ_UMAC command that is not
backwards compatible. The driver needs to detect and use the new API
format when the firmware reports it, otherwise the scan command will
not work properly, causing a command timeout.
Fix this by adding a TLV that tells the driver that the new API is in
use and use the correct structures for it.
This fixes https://bugzilla.kernel.org/show_bug.cgi?id=197591
Fixes: d7a5b3e9e42e ("iwlwifi: mvm: bump API to 34 for 8000 and up")
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/mvm.h')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/mvm.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mvm.h b/drivers/net/wireless/intel/iwlwifi/mvm/mvm.h index 0e18c5066f04..4575595ab022 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/mvm.h +++ b/drivers/net/wireless/intel/iwlwifi/mvm/mvm.h @@ -1142,6 +1142,12 @@ static inline bool iwl_mvm_is_d0i3_supported(struct iwl_mvm *mvm) IWL_UCODE_TLV_CAPA_D0I3_SUPPORT); } +static inline bool iwl_mvm_is_adaptive_dwell_supported(struct iwl_mvm *mvm) +{ + return fw_has_api(&mvm->fw->ucode_capa, + IWL_UCODE_TLV_API_ADAPTIVE_DWELL); +} + static inline bool iwl_mvm_enter_d0i3_on_suspend(struct iwl_mvm *mvm) { /* For now we only use this mode to differentiate between |