[dpdk-dev] [PATCH] net/qede/base: fix to initialize HW for LLH filters
Mody, Rasesh
Rasesh.Mody at cavium.com
Wed Oct 31 01:27:03 CET 2018
During initalization of leading PF, we need to initialize HW for LLH
filters. Set HW init parameter to set the eingine affinity for
multiple engine adapters.
Fixes: 3eed444a9621 ("net/qede/base: changes for 100G")
Signed-off-by: Rasesh Mody <rasesh.mody at cavium.com>
---
drivers/net/qede/base/ecore_dev.c | 8 ++++++++
drivers/net/qede/qede_main.c | 1 +
2 files changed, 9 insertions(+)
diff --git a/drivers/net/qede/base/ecore_dev.c b/drivers/net/qede/base/ecore_dev.c
index cf454b1..d7e1d7b 100644
--- a/drivers/net/qede/base/ecore_dev.c
+++ b/drivers/net/qede/base/ecore_dev.c
@@ -3429,6 +3429,14 @@ static enum _ecore_status_t ecore_hw_init_port(struct ecore_hwfn *p_hwfn,
if (rc != ECORE_SUCCESS)
return rc;
+ /* Use the leading hwfn since in CMT only NIG #0 is operational */
+ if (IS_LEAD_HWFN(p_hwfn)) {
+ rc = ecore_llh_hw_init_pf(p_hwfn, p_ptt,
+ p_params->avoid_eng_affin);
+ if (rc)
+ return rc;
+ }
+
if (p_params->b_hw_start) {
/* enable interrupts */
rc = ecore_int_igu_enable(p_hwfn, p_ptt, p_params->int_mode);
diff --git a/drivers/net/qede/qede_main.c b/drivers/net/qede/qede_main.c
index c361f24..b128388 100644
--- a/drivers/net/qede/qede_main.c
+++ b/drivers/net/qede/qede_main.c
@@ -287,6 +287,7 @@ static int qed_slowpath_start(struct ecore_dev *edev,
drv_load_params.mfw_timeout_val = ECORE_LOAD_REQ_LOCK_TO_DEFAULT;
drv_load_params.avoid_eng_reset = false;
drv_load_params.override_force_load = ECORE_OVERRIDE_FORCE_LOAD_ALWAYS;
+ hw_init_params.avoid_eng_affin = false;
hw_init_params.p_drv_load_params = &drv_load_params;
rc = ecore_hw_init(edev, &hw_init_params);
--
1.7.10.3
More information about the dev
mailing list