net/qede/base: fix to clear HW indication
VDMs may cause the was_error indication to be set after the driver clears it. Clear the indication after the internal FID_enable for the PF is set. Fixes: 60c78a5e258a ("net/qede/base: fix recovery from previous ungraceful exit") Cc: stable@dpdk.org Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
This commit is contained in:
parent
4eee1bbf25
commit
c8dbf68143
@ -2511,9 +2511,8 @@ enum _ecore_status_t ecore_hw_init(struct ecore_dev *p_dev,
|
||||
}
|
||||
}
|
||||
|
||||
/* Log and clean previous pglue_b errors if such exist */
|
||||
/* Log and clear previous pglue_b errors if such exist */
|
||||
ecore_pglueb_rbc_attn_handler(p_hwfn, p_hwfn->p_main_ptt, true);
|
||||
ecore_pglueb_clear_err(p_hwfn, p_hwfn->p_main_ptt);
|
||||
|
||||
/* Enable the PF's internal FID_enable in the PXP */
|
||||
rc = ecore_pglueb_set_pfid_enable(p_hwfn, p_hwfn->p_main_ptt,
|
||||
@ -2521,6 +2520,13 @@ enum _ecore_status_t ecore_hw_init(struct ecore_dev *p_dev,
|
||||
if (rc != ECORE_SUCCESS)
|
||||
goto load_err;
|
||||
|
||||
/* Clear the pglue_b was_error indication.
|
||||
* In E4 it must be done after the BME and the internal
|
||||
* FID_enable for the PF are set, since VDMs may cause the
|
||||
* indication to be set again.
|
||||
*/
|
||||
ecore_pglueb_clear_err(p_hwfn, p_hwfn->p_main_ptt);
|
||||
|
||||
switch (load_code) {
|
||||
case FW_MSG_CODE_DRV_LOAD_ENGINE:
|
||||
rc = ecore_hw_init_common(p_hwfn, p_hwfn->p_main_ptt,
|
||||
|
Loading…
x
Reference in New Issue
Block a user