From 175da14fa38f1145e2d06dfe072980904bb288e7 Mon Sep 17 00:00:00 2001 From: Venkat Duvvuru Date: Fri, 9 Oct 2020 16:41:24 +0530 Subject: [PATCH] net/bnxt: handle default VNIC change async event Currently, we are only registering to this event if the function is a trusted VF. This patch extends it for PFs as well. Fixes: 322bd6e70272 ("net/bnxt: add port representor infrastructure") Cc: stable@dpdk.org Signed-off-by: Venkat Duvvuru Reviewed-by: Somnath Kotur Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/bnxt_cpr.c | 7 ++----- drivers/net/bnxt/bnxt_hwrm.c | 2 +- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/drivers/net/bnxt/bnxt_cpr.c b/drivers/net/bnxt/bnxt_cpr.c index 54923948f9..91d1ffe46c 100644 --- a/drivers/net/bnxt/bnxt_cpr.c +++ b/drivers/net/bnxt/bnxt_cpr.c @@ -50,7 +50,7 @@ static void bnxt_process_default_vnic_change(struct bnxt *bp, struct hwrm_async_event_cmpl *async_cmp) { - uint16_t fid, vnic_state, parent_id, vf_fid, vf_id; + uint16_t vnic_state, vf_fid, vf_id; struct bnxt_representor *vf_rep_bp; struct rte_eth_dev *eth_dev; bool vfr_found = false; @@ -67,10 +67,7 @@ bnxt_process_default_vnic_change(struct bnxt *bp, if (vnic_state != BNXT_DEFAULT_VNIC_ALLOC) return; - parent_id = (event_data & BNXT_DEFAULT_VNIC_CHANGE_PF_ID_MASK) >> - BNXT_DEFAULT_VNIC_CHANGE_PF_ID_SFT; - fid = BNXT_PF(bp) ? bp->fw_fid : bp->parent->fid; - if (parent_id != fid || !bp->rep_info) + if (!bp->rep_info) return; vf_fid = (event_data & BNXT_DEFAULT_VNIC_CHANGE_VF_ID_MASK) >> diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index 8133afc74d..eef282b699 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c @@ -938,7 +938,7 @@ int bnxt_hwrm_func_driver_register(struct bnxt *bp) req.async_event_fwd[1] |= rte_cpu_to_le_32(ASYNC_CMPL_EVENT_ID_DBG_NOTIFICATION); - if (BNXT_VF_IS_TRUSTED(bp)) + if (BNXT_PF(bp) || BNXT_VF_IS_TRUSTED(bp)) req.async_event_fwd[1] |= rte_cpu_to_le_32(ASYNC_CMPL_EVENT_ID_DEFAULT_VNIC_CHANGE); -- 2.20.1