diff options
-rw-r--r-- | drivers/net/wireless/iwlwifi/mvm/nvm.c | 18 |
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; |