From: Satheesh Paul Date: Tue, 9 Feb 2021 10:01:13 +0000 (+0530) Subject: net/octeontx2: fix VLAN filter X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=c8238116ece889fe356c54930bca791091ab1938;p=dpdk.git net/octeontx2: fix VLAN filter This patch fixes incorrect MCAM key preparation when creating MCAM entry to allow VLAN IDs after vlan filtering is enabled on port. Fixes: ba1b3b081edf ("net/octeontx2: support VLAN offloads") Cc: stable@dpdk.org Signed-off-by: Satheesh Paul Acked-by: Jerin Jacob --- diff --git a/drivers/net/octeontx2/otx2_vlan.c b/drivers/net/octeontx2/otx2_vlan.c index 7357b06695..f5161e17a1 100644 --- a/drivers/net/octeontx2/otx2_vlan.c +++ b/drivers/net/octeontx2/otx2_vlan.c @@ -306,12 +306,12 @@ nix_vlan_mcam_config(struct rte_eth_dev *eth_dev, (0xF & ~(NPC_LT_LB_CTAG ^ NPC_LT_LB_STAG_QINQ)) << mkex->lb_lt_offset; - mcam_data = ((uint32_t)vlan_id << 16); - mcam_mask = (BIT_ULL(16) - 1) << 16; + mcam_data = (uint16_t)vlan_id; + mcam_mask = (BIT_ULL(16) - 1); otx2_mbox_memcpy(key_data + mkex->lb_xtract.key_off, - &mcam_data, mkex->lb_xtract.len + 1); + &mcam_data, mkex->lb_xtract.len); otx2_mbox_memcpy(key_mask + mkex->lb_xtract.key_off, - &mcam_mask, mkex->lb_xtract.len + 1); + &mcam_mask, mkex->lb_xtract.len); } /* Adds LB STAG flag to MCAM KW */