diff options
author | Oren Givon <oren.givon@intel.com> | 2016-01-14 03:24:10 -0500 |
---|---|---|
committer | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2016-01-26 09:03:35 -0500 |
commit | ca296c571f6929e42dc0ac0bb5c81cdb5323362d (patch) | |
tree | 86fc78b7a340eb68acea241a23063763b4ad6af5 | |
parent | 9baa03982b06a62ac817b4983f2da7ca66d4f331 (diff) |
iwlwifi: update support for 3168 series firmware and NVM
Update the struct which defines the support for 3168 cards.
Now it will search for a firmware of this format:
iwlwifi-3168-XX.ucode
Also, set the minimum version of the ucode to 20.
Update the minimum NVM version and minimum NVM calibrations
version of the 3168 series.
Signed-off-by: Oren Givon <oren.givon@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/iwl-7000.c | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-7000.c b/drivers/net/wireless/intel/iwlwifi/iwl-7000.c index e60cf141ed79..fa41a5e1c890 100644 --- a/drivers/net/wireless/intel/iwlwifi/iwl-7000.c +++ b/drivers/net/wireless/intel/iwlwifi/iwl-7000.c | |||
@@ -74,16 +74,19 @@ | |||
74 | #define IWL7260_UCODE_API_MAX 17 | 74 | #define IWL7260_UCODE_API_MAX 17 |
75 | #define IWL7265_UCODE_API_MAX 17 | 75 | #define IWL7265_UCODE_API_MAX 17 |
76 | #define IWL7265D_UCODE_API_MAX 20 | 76 | #define IWL7265D_UCODE_API_MAX 20 |
77 | #define IWL3168_UCODE_API_MAX 20 | ||
77 | 78 | ||
78 | /* Oldest version we won't warn about */ | 79 | /* Oldest version we won't warn about */ |
79 | #define IWL7260_UCODE_API_OK 13 | 80 | #define IWL7260_UCODE_API_OK 13 |
80 | #define IWL7265_UCODE_API_OK 13 | 81 | #define IWL7265_UCODE_API_OK 13 |
81 | #define IWL7265D_UCODE_API_OK 13 | 82 | #define IWL7265D_UCODE_API_OK 13 |
83 | #define IWL3168_UCODE_API_OK 20 | ||
82 | 84 | ||
83 | /* Lowest firmware API version supported */ | 85 | /* Lowest firmware API version supported */ |
84 | #define IWL7260_UCODE_API_MIN 13 | 86 | #define IWL7260_UCODE_API_MIN 13 |
85 | #define IWL7265_UCODE_API_MIN 13 | 87 | #define IWL7265_UCODE_API_MIN 13 |
86 | #define IWL7265D_UCODE_API_MIN 13 | 88 | #define IWL7265D_UCODE_API_MIN 13 |
89 | #define IWL3168_UCODE_API_MIN 20 | ||
87 | 90 | ||
88 | /* NVM versions */ | 91 | /* NVM versions */ |
89 | #define IWL7260_NVM_VERSION 0x0a1d | 92 | #define IWL7260_NVM_VERSION 0x0a1d |
@@ -92,6 +95,8 @@ | |||
92 | #define IWL3160_TX_POWER_VERSION 0xffff /* meaningless */ | 95 | #define IWL3160_TX_POWER_VERSION 0xffff /* meaningless */ |
93 | #define IWL3165_NVM_VERSION 0x709 | 96 | #define IWL3165_NVM_VERSION 0x709 |
94 | #define IWL3165_TX_POWER_VERSION 0xffff /* meaningless */ | 97 | #define IWL3165_TX_POWER_VERSION 0xffff /* meaningless */ |
98 | #define IWL3168_NVM_VERSION 0xd01 | ||
99 | #define IWL3168_TX_POWER_VERSION 0xffff /* meaningless */ | ||
95 | #define IWL7265_NVM_VERSION 0x0a1d | 100 | #define IWL7265_NVM_VERSION 0x0a1d |
96 | #define IWL7265_TX_POWER_VERSION 0xffff /* meaningless */ | 101 | #define IWL7265_TX_POWER_VERSION 0xffff /* meaningless */ |
97 | #define IWL7265D_NVM_VERSION 0x0c11 | 102 | #define IWL7265D_NVM_VERSION 0x0c11 |
@@ -109,6 +114,9 @@ | |||
109 | #define IWL3160_FW_PRE "iwlwifi-3160-" | 114 | #define IWL3160_FW_PRE "iwlwifi-3160-" |
110 | #define IWL3160_MODULE_FIRMWARE(api) IWL3160_FW_PRE __stringify(api) ".ucode" | 115 | #define IWL3160_MODULE_FIRMWARE(api) IWL3160_FW_PRE __stringify(api) ".ucode" |
111 | 116 | ||
117 | #define IWL3168_FW_PRE "iwlwifi-3168-" | ||
118 | #define IWL3168_MODULE_FIRMWARE(api) IWL3168_FW_PRE __stringify(api) ".ucode" | ||
119 | |||
112 | #define IWL7265_FW_PRE "iwlwifi-7265-" | 120 | #define IWL7265_FW_PRE "iwlwifi-7265-" |
113 | #define IWL7265_MODULE_FIRMWARE(api) IWL7265_FW_PRE __stringify(api) ".ucode" | 121 | #define IWL7265_MODULE_FIRMWARE(api) IWL7265_FW_PRE __stringify(api) ".ucode" |
114 | 122 | ||
@@ -180,6 +188,12 @@ static const struct iwl_ht_params iwl7000_ht_params = { | |||
180 | .ucode_api_ok = IWL7265_UCODE_API_OK, \ | 188 | .ucode_api_ok = IWL7265_UCODE_API_OK, \ |
181 | .ucode_api_min = IWL7265_UCODE_API_MIN | 189 | .ucode_api_min = IWL7265_UCODE_API_MIN |
182 | 190 | ||
191 | #define IWL_DEVICE_3008 \ | ||
192 | IWL_DEVICE_7000_COMMON, \ | ||
193 | .ucode_api_max = IWL3168_UCODE_API_MAX, \ | ||
194 | .ucode_api_ok = IWL3168_UCODE_API_OK, \ | ||
195 | .ucode_api_min = IWL3168_UCODE_API_MIN | ||
196 | |||
183 | #define IWL_DEVICE_7005D \ | 197 | #define IWL_DEVICE_7005D \ |
184 | IWL_DEVICE_7000_COMMON, \ | 198 | IWL_DEVICE_7000_COMMON, \ |
185 | .ucode_api_max = IWL7265D_UCODE_API_MAX, \ | 199 | .ucode_api_max = IWL7265D_UCODE_API_MAX, \ |
@@ -299,11 +313,11 @@ const struct iwl_cfg iwl3165_2ac_cfg = { | |||
299 | 313 | ||
300 | const struct iwl_cfg iwl3168_2ac_cfg = { | 314 | const struct iwl_cfg iwl3168_2ac_cfg = { |
301 | .name = "Intel(R) Dual Band Wireless AC 3168", | 315 | .name = "Intel(R) Dual Band Wireless AC 3168", |
302 | .fw_name_pre = IWL7265D_FW_PRE, | 316 | .fw_name_pre = IWL3168_FW_PRE, |
303 | IWL_DEVICE_7000, | 317 | IWL_DEVICE_3008, |
304 | .ht_params = &iwl7000_ht_params, | 318 | .ht_params = &iwl7000_ht_params, |
305 | .nvm_ver = IWL3165_NVM_VERSION, | 319 | .nvm_ver = IWL3168_NVM_VERSION, |
306 | .nvm_calib_ver = IWL3165_TX_POWER_VERSION, | 320 | .nvm_calib_ver = IWL3168_TX_POWER_VERSION, |
307 | .pwr_tx_backoffs = iwl7265_pwr_tx_backoffs, | 321 | .pwr_tx_backoffs = iwl7265_pwr_tx_backoffs, |
308 | .dccm_len = IWL7265_DCCM_LEN, | 322 | .dccm_len = IWL7265_DCCM_LEN, |
309 | }; | 323 | }; |
@@ -376,5 +390,6 @@ const struct iwl_cfg iwl7265d_n_cfg = { | |||
376 | 390 | ||
377 | MODULE_FIRMWARE(IWL7260_MODULE_FIRMWARE(IWL7260_UCODE_API_OK)); | 391 | MODULE_FIRMWARE(IWL7260_MODULE_FIRMWARE(IWL7260_UCODE_API_OK)); |
378 | MODULE_FIRMWARE(IWL3160_MODULE_FIRMWARE(IWL7260_UCODE_API_OK)); | 392 | MODULE_FIRMWARE(IWL3160_MODULE_FIRMWARE(IWL7260_UCODE_API_OK)); |
393 | MODULE_FIRMWARE(IWL3168_MODULE_FIRMWARE(IWL3168_UCODE_API_OK)); | ||
379 | MODULE_FIRMWARE(IWL7265_MODULE_FIRMWARE(IWL7265_UCODE_API_OK)); | 394 | MODULE_FIRMWARE(IWL7265_MODULE_FIRMWARE(IWL7265_UCODE_API_OK)); |
380 | MODULE_FIRMWARE(IWL7265D_MODULE_FIRMWARE(IWL7265D_UCODE_API_OK)); | 395 | MODULE_FIRMWARE(IWL7265D_MODULE_FIRMWARE(IWL7265D_UCODE_API_OK)); |