From: Kiran Kumar K <[email protected]> Adding KPU support to parse custom L2 header of size 24 bytes. Pkind 57 has been reserved for this. And changed the custom l2 header ltypes to appropriate names.
Signed-off-by: Kiran Kumar K <[email protected]> Change-Id: Ibd1a8d005df53ff4881fc3b8c6e97c16aa4216a2 Reviewed-on: https://sj1git1.cavium.com/c/IP/SW/kernel/linux/+/42280 Tested-by: sa_ip-sw-jenkins <[email protected]> Reviewed-by: Sunil Kovvuri Goutham <[email protected]> Signed-off-by: Ruiqiang Hao <[email protected]> --- drivers/net/ethernet/marvell/octeontx2/af/npc.h | 6 +- .../ethernet/marvell/octeontx2/af/npc_profile.h | 345 ++++++++++++++++++--- .../net/ethernet/marvell/octeontx2/af/rvu_nix.c | 2 +- 3 files changed, 314 insertions(+), 39 deletions(-) diff --git a/drivers/net/ethernet/marvell/octeontx2/af/npc.h b/drivers/net/ethernet/marvell/octeontx2/af/npc.h index 396406cff022..5c9bc924fd50 100644 --- a/drivers/net/ethernet/marvell/octeontx2/af/npc.h +++ b/drivers/net/ethernet/marvell/octeontx2/af/npc.h @@ -33,8 +33,9 @@ enum npc_kpu_la_ltype { NPC_LT_LA_IH_2_ETHER, NPC_LT_LA_HIGIG2_ETHER, NPC_LT_LA_IH_NIX_HIGIG2_ETHER, - NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_LT_LA_CPT_HDR, + NPC_LT_LA_CUSTOM_L2_24B_ETHER, NPC_LT_LA_CUSTOM0 = 0xE, NPC_LT_LA_CUSTOM1 = 0xF, }; @@ -147,7 +148,8 @@ enum npc_kpu_lh_ltype { }; enum npc_pkind_type { - NPC_RX_CPT_HDR_PKIND = 58ULL, + NPC_RX_CHLEN24B_PKIND = 57ULL, + NPC_RX_CPT_HDR_PKIND, NPC_RX_CHLEN90B_PKIND, NPC_TX_HIGIG_PKIND, NPC_RX_HIGIG_PKIND, diff --git a/drivers/net/ethernet/marvell/octeontx2/af/npc_profile.h b/drivers/net/ethernet/marvell/octeontx2/af/npc_profile.h index 89a53ec7b25b..d58536b18759 100644 --- a/drivers/net/ethernet/marvell/octeontx2/af/npc_profile.h +++ b/drivers/net/ethernet/marvell/octeontx2/af/npc_profile.h @@ -159,8 +159,9 @@ enum npc_kpu_parser_state { NPC_S_KPU1_EXDSA, NPC_S_KPU1_HIGIG2, NPC_S_KPU1_IH_NIX_HIGIG2, - NPC_S_KPU1_CH_LEN_90B, + NPC_S_KPU1_CUSTOM_L2_90B, NPC_S_KPU1_CPT_HDR, + NPC_S_KPU1_CUSTOM_L2_24B, NPC_S_KPU2_CTAG, NPC_S_KPU2_CTAG2, NPC_S_KPU2_SBTAG, @@ -970,8 +971,8 @@ static struct npc_kpu_profile_action ikpu_action_entries[] = { }, { NPC_ERRLEV_RE, NPC_EC_NOERR, - 12, 16, 20, 0, 0, - NPC_S_KPU1_ETHER, 0, 0, + 36, 40, 44, 0, 0, + NPC_S_KPU1_CUSTOM_L2_24B, 0, 0, NPC_LID_LA, NPC_LT_NA, 0, 0, 0, 0, 0, @@ -989,7 +990,7 @@ static struct npc_kpu_profile_action ikpu_action_entries[] = { { NPC_ERRLEV_RE, NPC_EC_NOERR, 102, 106, 110, 0, 0, - NPC_S_KPU1_CH_LEN_90B, 0, 0, + NPC_S_KPU1_CUSTOM_L2_90B, 0, 0, NPC_LID_LA, NPC_LT_NA, 0, 0, 0, 0, 0, @@ -1703,7 +1704,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_IP, 0xffff, 0x0000, @@ -1712,7 +1713,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_IP6, 0xffff, 0x0000, @@ -1721,7 +1722,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_ARP, 0xffff, 0x0000, @@ -1730,7 +1731,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_RARP, 0xffff, 0x0000, @@ -1739,7 +1740,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_PTP, 0xffff, 0x0000, @@ -1748,7 +1749,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_FCOE, 0xffff, 0x0000, @@ -1757,7 +1758,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_CTAG, 0xffff, NPC_ETYPE_CTAG, @@ -1766,7 +1767,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_CTAG, 0xffff, 0x0000, @@ -1775,7 +1776,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_SBTAG, 0xffff, 0x0000, @@ -1784,7 +1785,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_QINQ, 0xffff, 0x0000, @@ -1793,7 +1794,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_ETAG, 0xffff, 0x0000, @@ -1802,7 +1803,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_ITAG, 0xffff, 0x0000, @@ -1811,7 +1812,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_MPLSU, 0xffff, 0x0000, @@ -1820,7 +1821,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_MPLSM, 0xffff, 0x0000, @@ -1829,7 +1830,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, NPC_ETYPE_NSH, 0xffff, 0x0000, @@ -1838,7 +1839,7 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, }, { - NPC_S_KPU1_CH_LEN_90B, 0xff, + NPC_S_KPU1_CUSTOM_L2_90B, 0xff, 0x0000, 0x0000, 0x0000, @@ -1990,6 +1991,150 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = { 0x0000, 0x0000, }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_IP, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_IP6, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_ARP, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_RARP, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_PTP, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_FCOE, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_CTAG, + 0xffff, + NPC_ETYPE_CTAG, + 0xffff, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_CTAG, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_SBTAG, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_QINQ, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_ETAG, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_ITAG, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_MPLSU, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_MPLSM, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + NPC_ETYPE_NSH, + 0xffff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, + { + NPC_S_KPU1_CUSTOM_L2_24B, 0xff, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + 0x0000, + }, { NPC_S_NA, 0X00, 0x0000, @@ -8412,7 +8557,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 8, 0, 6, 3, 0, NPC_S_KPU5_IP, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, 0, 0, 0, 0, 0, }, @@ -8420,7 +8565,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 6, 0, 0, 3, 0, NPC_S_KPU5_IP6, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, 0, 0, 0, 0, 0, }, @@ -8428,7 +8573,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 0, 0, 0, 3, 0, NPC_S_KPU5_ARP, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, 0, 0, 0, 0, 0, }, @@ -8436,7 +8581,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 0, 0, 0, 3, 0, NPC_S_KPU5_RARP, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, 0, 0, 0, 0, 0, }, @@ -8444,7 +8589,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 0, 0, 0, 3, 0, NPC_S_KPU5_PTP, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, 0, 0, 0, 0, 0, }, @@ -8452,7 +8597,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 0, 0, 0, 3, 0, NPC_S_KPU5_FCOE, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, 0, 0, 0, 0, 0, }, @@ -8460,7 +8605,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 8, 12, 0, 0, 0, NPC_S_KPU2_CTAG2, 102, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN, 0, 0, 0, 0, }, @@ -8468,7 +8613,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 4, 8, 0, 0, 0, NPC_S_KPU2_CTAG, 102, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN, 0, 0, 0, 0, }, @@ -8476,7 +8621,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 4, 8, 22, 0, 0, NPC_S_KPU2_SBTAG, 102, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN, 0, 0, 0, 0, }, @@ -8484,7 +8629,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 4, 8, 0, 0, 0, NPC_S_KPU2_QINQ, 102, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN, 0, 0, 0, 0, }, @@ -8492,7 +8637,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 8, 12, 26, 0, 0, NPC_S_KPU2_ETAG, 102, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_ETAG, 0, 0, 0, 0, }, @@ -8500,7 +8645,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 18, 22, 26, 0, 0, NPC_S_KPU2_ITAG, 102, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_ITAG, 0, 0, 0, 0, }, @@ -8508,7 +8653,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 2, 6, 10, 2, 0, NPC_S_KPU4_MPLS, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_L_WITH_MPLS, 0, 0, 0, 0, }, @@ -8516,7 +8661,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 2, 6, 10, 2, 0, NPC_S_KPU4_MPLS, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_L_WITH_MPLS, 0, 0, 0, 0, }, @@ -8524,7 +8669,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 2, 0, 0, 2, 0, NPC_S_KPU4_NSH, 104, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_L_WITH_NSH, 0, 0, 0, 0, }, @@ -8532,7 +8677,7 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_ERRLEV_RE, NPC_EC_NOERR, 0, 0, 0, 0, 1, NPC_S_NA, 0, 1, - NPC_LID_LA, NPC_LT_LA_CH_LEN_90B_ETHER, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER, NPC_F_LA_L_UNK_ETYPE, 0, 0, 0, 0, }, @@ -8664,6 +8809,134 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = { NPC_F_LA_L_UNK_ETYPE, 0, 0, 0, 0, }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 8, 0, 6, 3, 0, + NPC_S_KPU5_IP, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + 0, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 6, 0, 0, 3, 0, + NPC_S_KPU5_IP6, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + 0, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 0, 0, 0, 3, 0, + NPC_S_KPU5_ARP, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + 0, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 0, 0, 0, 3, 0, + NPC_S_KPU5_RARP, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + 0, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 0, 0, 0, 3, 0, + NPC_S_KPU5_PTP, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + 0, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 0, 0, 0, 3, 0, + NPC_S_KPU5_FCOE, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + 0, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 8, 12, 0, 0, 0, + NPC_S_KPU2_CTAG2, 36, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 4, 8, 0, 0, 0, + NPC_S_KPU2_CTAG, 36, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 4, 8, 22, 0, 0, + NPC_S_KPU2_SBTAG, 36, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 4, 8, 0, 0, 0, + NPC_S_KPU2_QINQ, 36, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_VLAN, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 8, 12, 26, 0, 0, + NPC_S_KPU2_ETAG, 36, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_ETAG, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 18, 22, 26, 0, 0, + NPC_S_KPU2_ITAG, 36, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_U_HAS_TAG | NPC_F_LA_L_WITH_ITAG, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 2, 6, 10, 2, 0, + NPC_S_KPU4_MPLS, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_L_WITH_MPLS, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 2, 6, 10, 2, 0, + NPC_S_KPU4_MPLS, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_L_WITH_MPLS, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 2, 0, 0, 2, 0, + NPC_S_KPU4_NSH, 38, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_L_WITH_NSH, + 0, 0, 0, 0, + }, + { + NPC_ERRLEV_RE, NPC_EC_NOERR, + 0, 0, 0, 0, 1, + NPC_S_NA, 0, 1, + NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER, + NPC_F_LA_L_UNK_ETYPE, + 0, 0, 0, 0, + }, { NPC_ERRLEV_LA, NPC_EC_L2_K1, 0, 0, 0, 0, 1, diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c b/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c index 105bb859a053..971b25338d1a 100644 --- a/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c +++ b/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c @@ -3125,7 +3125,7 @@ static int set_flowkey_fields(struct nix_rx_flowkey_alg *alg, u32 flow_cfg) field->lid = NPC_LID_LA; field->hdr_offset = 24; field->bytesm1 = 1; /* 2 Bytes*/ - field->ltype_match = NPC_LT_LA_CH_LEN_90B_ETHER; + field->ltype_match = NPC_LT_LA_CUSTOM_L2_90B_ETHER; field->ltype_mask = 0xF; break; case NIX_FLOW_KEY_TYPE_CUSTOM0: -- 2.14.5
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#9400): https://lists.yoctoproject.org/g/linux-yocto/message/9400 Mute This Topic: https://lists.yoctoproject.org/mt/79974873/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
