aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/nvm.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/nvm.c b/drivers/net/wireless/iwlwifi/mvm/nvm.c
index fe4c91e7c27c..2cb6c29b0a97 100644
--- a/drivers/net/wireless/iwlwifi/mvm/nvm.c
+++ b/drivers/net/wireless/iwlwifi/mvm/nvm.c
@@ -437,14 +437,7 @@ int iwl_nvm_init(struct iwl_mvm *mvm, bool read_nvm_from_nic)
437 if (WARN_ON_ONCE(mvm->cfg->nvm_hw_section_num >= NVM_MAX_NUM_SECTIONS)) 437 if (WARN_ON_ONCE(mvm->cfg->nvm_hw_section_num >= NVM_MAX_NUM_SECTIONS))
438 return -EINVAL; 438 return -EINVAL;
439 439
440 /* load external NVM if configured */ 440 /* load NVM values from nic */
441 if (iwlwifi_mod_params.nvm_file) {
442 /* move to External NVM flow */
443 ret = iwl_mvm_read_external_nvm(mvm);
444 if (ret)
445 return ret;
446 }
447
448 if (read_nvm_from_nic) { 441 if (read_nvm_from_nic) {
449 /* list of NVM sections we are allowed/need to read */ 442 /* list of NVM sections we are allowed/need to read */
450 if (mvm->trans->cfg->device_family != IWL_DEVICE_FAMILY_8000) { 443 if (mvm->trans->cfg->device_family != IWL_DEVICE_FAMILY_8000) {
@@ -512,6 +505,15 @@ int iwl_nvm_init(struct iwl_mvm *mvm, bool read_nvm_from_nic)
512 return ret; 505 return ret;
513 } 506 }
514 507
508 /* load external NVM if configured */
509 if (iwlwifi_mod_params.nvm_file) {
510 /* move to External NVM flow */
511 ret = iwl_mvm_read_external_nvm(mvm);
512 if (ret)
513 return ret;
514 }
515
516 /* parse the relevant nvm sections */
515 mvm->nvm_data = iwl_parse_nvm_sections(mvm); 517 mvm->nvm_data = iwl_parse_nvm_sections(mvm);
516 if (!mvm->nvm_data) 518 if (!mvm->nvm_data)
517 return -ENODATA; 519 return -ENODATA;