aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/qede/base/ecore_dev.c
diff options
context:
space:
mode:
authorLuca Boccassi <luca.boccassi@gmail.com>2018-09-03 10:48:52 +0100
committerLuca Boccassi <luca.boccassi@gmail.com>2018-09-03 10:49:31 +0100
commitcbcf3d44176009673fbcd7d15671bef56c021f6b (patch)
tree03ac41bbf9f5f9f238e62de84d43dcce721b8dab /drivers/net/qede/base/ecore_dev.c
parent1d9284040a0ba38d86e6eeffdb25f36eeb7a44e1 (diff)
parent6e7cbd63706f3435b9d9a2057a37db1da01db9a7 (diff)
Merge branch 'upstream-17.11-stable' into 17.11.x
Change-Id: Id5d87fa34325cf80217a1f633c9dc1808e931af8 Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
Diffstat (limited to 'drivers/net/qede/base/ecore_dev.c')
-rw-r--r--drivers/net/qede/base/ecore_dev.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/qede/base/ecore_dev.c b/drivers/net/qede/base/ecore_dev.c
index 9affcbc9..092606be 100644
--- a/drivers/net/qede/base/ecore_dev.c
+++ b/drivers/net/qede/base/ecore_dev.c
@@ -2423,9 +2423,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);
- 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,
@@ -2433,6 +2432,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,