diff options
author | Eran Harary <eran.harary@intel.com> | 2014-12-02 08:19:22 -0500 |
---|---|---|
committer | Emmanuel Grumbach <emmanuel.grumbach@intel.com> | 2014-12-28 13:00:16 -0500 |
commit | 363039be5b9dcbb9df9136c7106d8775f71e43c6 (patch) | |
tree | 6da4c6235cadd238e781db5809f581f9dc7760a7 /drivers/net/wireless | |
parent | 6a028d9a26446a937fa5c2eaca9407985ef98add (diff) |
iwlwifi: mvm: support additional nvm_file in family 8000 B step
nvm_file in family 8000 B step and A step differ. This means
that the driver should support 2 file name as default.
Signed-off-by: Eran Harary <eran.harary@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-8000.c | 5 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-config.h | 1 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/mvm/mac80211.c | 1 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/mvm/ops.c | 11 |
4 files changed, 14 insertions, 4 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-8000.c b/drivers/net/wireless/iwlwifi/iwl-8000.c index 6c5c55856a35..8f64928aeb42 100644 --- a/drivers/net/wireless/iwlwifi/iwl-8000.c +++ b/drivers/net/wireless/iwlwifi/iwl-8000.c | |||
@@ -90,7 +90,8 @@ | |||
90 | IWL8000_FW_PRE "-" __stringify(api) ".ucode" | 90 | IWL8000_FW_PRE "-" __stringify(api) ".ucode" |
91 | 91 | ||
92 | #define NVM_HW_SECTION_NUM_FAMILY_8000 10 | 92 | #define NVM_HW_SECTION_NUM_FAMILY_8000 10 |
93 | #define DEFAULT_NVM_FILE_FAMILY_8000 "iwl_nvm_8000.bin" | 93 | #define DEFAULT_NVM_FILE_FAMILY_8000A "iwl_nvm_8000.bin" |
94 | #define DEFAULT_NVM_FILE_FAMILY_8000 "iwl_nvm_8000B.bin" | ||
94 | 95 | ||
95 | /* Max SDIO RX aggregation size of the ADDBA request/response */ | 96 | /* Max SDIO RX aggregation size of the ADDBA request/response */ |
96 | #define MAX_RX_AGG_SIZE_8260_SDIO 28 | 97 | #define MAX_RX_AGG_SIZE_8260_SDIO 28 |
@@ -159,6 +160,7 @@ const struct iwl_cfg iwl8260_2ac_sdio_cfg = { | |||
159 | .nvm_ver = IWL8000_NVM_VERSION, | 160 | .nvm_ver = IWL8000_NVM_VERSION, |
160 | .nvm_calib_ver = IWL8000_TX_POWER_VERSION, | 161 | .nvm_calib_ver = IWL8000_TX_POWER_VERSION, |
161 | .default_nvm_file = DEFAULT_NVM_FILE_FAMILY_8000, | 162 | .default_nvm_file = DEFAULT_NVM_FILE_FAMILY_8000, |
163 | .default_nvm_file_8000A = DEFAULT_NVM_FILE_FAMILY_8000A, | ||
162 | .max_rx_agg_size = MAX_RX_AGG_SIZE_8260_SDIO, | 164 | .max_rx_agg_size = MAX_RX_AGG_SIZE_8260_SDIO, |
163 | .disable_dummy_notification = true, | 165 | .disable_dummy_notification = true, |
164 | .max_ht_ampdu_exponent = MAX_HT_AMPDU_EXPONENT_8260_SDIO, | 166 | .max_ht_ampdu_exponent = MAX_HT_AMPDU_EXPONENT_8260_SDIO, |
@@ -173,6 +175,7 @@ const struct iwl_cfg iwl4165_2ac_sdio_cfg = { | |||
173 | .nvm_ver = IWL8000_NVM_VERSION, | 175 | .nvm_ver = IWL8000_NVM_VERSION, |
174 | .nvm_calib_ver = IWL8000_TX_POWER_VERSION, | 176 | .nvm_calib_ver = IWL8000_TX_POWER_VERSION, |
175 | .default_nvm_file = DEFAULT_NVM_FILE_FAMILY_8000, | 177 | .default_nvm_file = DEFAULT_NVM_FILE_FAMILY_8000, |
178 | .default_nvm_file_8000A = DEFAULT_NVM_FILE_FAMILY_8000A, | ||
176 | .max_rx_agg_size = MAX_RX_AGG_SIZE_8260_SDIO, | 179 | .max_rx_agg_size = MAX_RX_AGG_SIZE_8260_SDIO, |
177 | .bt_shared_single_ant = true, | 180 | .bt_shared_single_ant = true, |
178 | .disable_dummy_notification = true, | 181 | .disable_dummy_notification = true, |
diff --git a/drivers/net/wireless/iwlwifi/iwl-config.h b/drivers/net/wireless/iwlwifi/iwl-config.h index 31c67dfabf55..2daabab7ec3f 100644 --- a/drivers/net/wireless/iwlwifi/iwl-config.h +++ b/drivers/net/wireless/iwlwifi/iwl-config.h | |||
@@ -300,6 +300,7 @@ struct iwl_cfg { | |||
300 | const struct iwl_pwr_tx_backoff *pwr_tx_backoffs; | 300 | const struct iwl_pwr_tx_backoff *pwr_tx_backoffs; |
301 | bool no_power_up_nic_in_init; | 301 | bool no_power_up_nic_in_init; |
302 | const char *default_nvm_file; | 302 | const char *default_nvm_file; |
303 | const char *default_nvm_file_8000A; | ||
303 | unsigned int max_rx_agg_size; | 304 | unsigned int max_rx_agg_size; |
304 | bool disable_dummy_notification; | 305 | bool disable_dummy_notification; |
305 | unsigned int max_tx_agg_size; | 306 | unsigned int max_tx_agg_size; |
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c index 2293a51f3c3a..f53bfd6e8df8 100644 --- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c +++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c | |||
@@ -85,6 +85,7 @@ | |||
85 | #include "testmode.h" | 85 | #include "testmode.h" |
86 | #include "iwl-fw-error-dump.h" | 86 | #include "iwl-fw-error-dump.h" |
87 | #include "iwl-prph.h" | 87 | #include "iwl-prph.h" |
88 | #include "iwl-csr.h" | ||
88 | 89 | ||
89 | static const struct ieee80211_iface_limit iwl_mvm_limits[] = { | 90 | static const struct ieee80211_iface_limit iwl_mvm_limits[] = { |
90 | { | 91 | { |
diff --git a/drivers/net/wireless/iwlwifi/mvm/ops.c b/drivers/net/wireless/iwlwifi/mvm/ops.c index 146554c88c14..b2fa3b878f79 100644 --- a/drivers/net/wireless/iwlwifi/mvm/ops.c +++ b/drivers/net/wireless/iwlwifi/mvm/ops.c | |||
@@ -511,10 +511,15 @@ iwl_op_mode_mvm_start(struct iwl_trans *trans, const struct iwl_cfg *cfg, | |||
511 | min_backoff = calc_min_backoff(trans, cfg); | 511 | min_backoff = calc_min_backoff(trans, cfg); |
512 | iwl_mvm_tt_initialize(mvm, min_backoff); | 512 | iwl_mvm_tt_initialize(mvm, min_backoff); |
513 | /* set the nvm_file_name according to priority */ | 513 | /* set the nvm_file_name according to priority */ |
514 | if (iwlwifi_mod_params.nvm_file) | 514 | if (iwlwifi_mod_params.nvm_file) { |
515 | mvm->nvm_file_name = iwlwifi_mod_params.nvm_file; | 515 | mvm->nvm_file_name = iwlwifi_mod_params.nvm_file; |
516 | else | 516 | } else { |
517 | mvm->nvm_file_name = mvm->cfg->default_nvm_file; | 517 | if ((trans->cfg->device_family == IWL_DEVICE_FAMILY_8000) && |
518 | (CSR_HW_REV_STEP(trans->hw_rev) == SILICON_A_STEP)) | ||
519 | mvm->nvm_file_name = mvm->cfg->default_nvm_file_8000A; | ||
520 | else | ||
521 | mvm->nvm_file_name = mvm->cfg->default_nvm_file; | ||
522 | } | ||
518 | 523 | ||
519 | if (WARN(cfg->no_power_up_nic_in_init && !mvm->nvm_file_name, | 524 | if (WARN(cfg->no_power_up_nic_in_init && !mvm->nvm_file_name, |
520 | "not allowing power-up and not having nvm_file\n")) | 525 | "not allowing power-up and not having nvm_file\n")) |