i40e: Move NVM variable out of AQ struct
The NVM update status info should stay collected together, not spread across different structs. Change-ID: Ic16f9e9fd79945d865bb7226184c889884585025 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
Родитель
14c5f5d264
Коммит
437f82a229
|
@ -624,7 +624,7 @@ i40e_status i40e_init_adminq(struct i40e_hw *hw)
|
|||
|
||||
/* pre-emptive resource lock release */
|
||||
i40e_aq_release_resource(hw, I40E_NVM_RESOURCE_ID, 0, NULL);
|
||||
hw->aq.nvm_release_on_done = false;
|
||||
hw->nvm_release_on_done = false;
|
||||
hw->nvmupd_state = I40E_NVMUPD_STATE_INIT;
|
||||
|
||||
ret_code = i40e_aq_set_hmc_resource_profile(hw,
|
||||
|
@ -1024,9 +1024,9 @@ i40e_status i40e_clean_arq_element(struct i40e_hw *hw,
|
|||
hw->aq.arq.next_to_use = ntu;
|
||||
|
||||
if (i40e_is_nvm_update_op(&e->desc)) {
|
||||
if (hw->aq.nvm_release_on_done) {
|
||||
if (hw->nvm_release_on_done) {
|
||||
i40e_release_nvm(hw);
|
||||
hw->aq.nvm_release_on_done = false;
|
||||
hw->nvm_release_on_done = false;
|
||||
}
|
||||
|
||||
switch (hw->nvmupd_state) {
|
||||
|
|
|
@ -97,7 +97,6 @@ struct i40e_adminq_info {
|
|||
u32 fw_build; /* firmware build number */
|
||||
u16 api_maj_ver; /* api major version */
|
||||
u16 api_min_ver; /* api minor version */
|
||||
bool nvm_release_on_done;
|
||||
|
||||
struct mutex asq_mutex; /* Send queue lock */
|
||||
struct mutex arq_mutex; /* Receive queue lock */
|
||||
|
|
|
@ -696,7 +696,7 @@ i40e_status i40e_nvmupd_command(struct i40e_hw *hw,
|
|||
i40e_debug(hw, I40E_DEBUG_NVM, "%s state %d nvm_release_on_hold %d cmd 0x%08x config 0x%08x offset 0x%08x data_size 0x%08x\n",
|
||||
i40e_nvm_update_state_str[upd_cmd],
|
||||
hw->nvmupd_state,
|
||||
hw->aq.nvm_release_on_done,
|
||||
hw->nvm_release_on_done,
|
||||
cmd->command, cmd->config, cmd->offset, cmd->data_size);
|
||||
|
||||
if (upd_cmd == I40E_NVMUPD_INVALID) {
|
||||
|
@ -799,7 +799,7 @@ static i40e_status i40e_nvmupd_state_init(struct i40e_hw *hw,
|
|||
if (status) {
|
||||
i40e_release_nvm(hw);
|
||||
} else {
|
||||
hw->aq.nvm_release_on_done = true;
|
||||
hw->nvm_release_on_done = true;
|
||||
hw->nvmupd_state = I40E_NVMUPD_STATE_INIT_WAIT;
|
||||
}
|
||||
}
|
||||
|
@ -815,7 +815,7 @@ static i40e_status i40e_nvmupd_state_init(struct i40e_hw *hw,
|
|||
if (status) {
|
||||
i40e_release_nvm(hw);
|
||||
} else {
|
||||
hw->aq.nvm_release_on_done = true;
|
||||
hw->nvm_release_on_done = true;
|
||||
hw->nvmupd_state = I40E_NVMUPD_STATE_INIT_WAIT;
|
||||
}
|
||||
}
|
||||
|
@ -849,7 +849,7 @@ static i40e_status i40e_nvmupd_state_init(struct i40e_hw *hw,
|
|||
-EIO;
|
||||
i40e_release_nvm(hw);
|
||||
} else {
|
||||
hw->aq.nvm_release_on_done = true;
|
||||
hw->nvm_release_on_done = true;
|
||||
hw->nvmupd_state = I40E_NVMUPD_STATE_INIT_WAIT;
|
||||
}
|
||||
}
|
||||
|
@ -953,7 +953,7 @@ retry:
|
|||
-EIO;
|
||||
hw->nvmupd_state = I40E_NVMUPD_STATE_INIT;
|
||||
} else {
|
||||
hw->aq.nvm_release_on_done = true;
|
||||
hw->nvm_release_on_done = true;
|
||||
hw->nvmupd_state = I40E_NVMUPD_STATE_INIT_WAIT;
|
||||
}
|
||||
break;
|
||||
|
@ -980,7 +980,7 @@ retry:
|
|||
-EIO;
|
||||
hw->nvmupd_state = I40E_NVMUPD_STATE_INIT;
|
||||
} else {
|
||||
hw->aq.nvm_release_on_done = true;
|
||||
hw->nvm_release_on_done = true;
|
||||
hw->nvmupd_state = I40E_NVMUPD_STATE_INIT_WAIT;
|
||||
}
|
||||
break;
|
||||
|
|
|
@ -549,6 +549,7 @@ struct i40e_hw {
|
|||
enum i40e_nvmupd_state nvmupd_state;
|
||||
struct i40e_aq_desc nvm_wb_desc;
|
||||
struct i40e_virt_mem nvm_buff;
|
||||
bool nvm_release_on_done;
|
||||
|
||||
/* HMC info */
|
||||
struct i40e_hmc_info hmc; /* HMC info struct */
|
||||
|
|
|
@ -97,7 +97,6 @@ struct i40e_adminq_info {
|
|||
u32 fw_build; /* firmware build number */
|
||||
u16 api_maj_ver; /* api major version */
|
||||
u16 api_min_ver; /* api minor version */
|
||||
bool nvm_release_on_done;
|
||||
|
||||
struct mutex asq_mutex; /* Send queue lock */
|
||||
struct mutex arq_mutex; /* Receive queue lock */
|
||||
|
|
|
@ -522,6 +522,7 @@ struct i40e_hw {
|
|||
enum i40e_nvmupd_state nvmupd_state;
|
||||
struct i40e_aq_desc nvm_wb_desc;
|
||||
struct i40e_virt_mem nvm_buff;
|
||||
bool nvm_release_on_done;
|
||||
|
||||
/* HMC info */
|
||||
struct i40e_hmc_info hmc; /* HMC info struct */
|
||||
|
|
Загрузка…
Ссылка в новой задаче