Commit 745166fc authored by Kiran Kumar K's avatar Kiran Kumar K Committed by David S. Miller
Browse files

octeontx2-af: Add KPU changes to parse NGIO as separate layer



With current KPU profile NGIO is being parsed along with CTAG as
a single layer. Because of this MCAM/ntuple rules installed with
ethertype as 0x8842 are not being hit. Adding KPU profile changes
to parse NGIO in separate ltype and CTAG in separate ltype.

Fixes: f9c49be9 ("octeontx2-af: Update the default KPU profile and fixes")
Signed-off-by: default avatarKiran Kumar K <kirankumark@marvell.com>
Signed-off-by: default avatarSubbaraya Sundeep <sbhatta@marvell.com>
Signed-off-by: default avatarSunil Goutham <sgoutham@marvell.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a8db854b
Loading
Loading
Loading
Loading
+35 −35
Original line number Diff line number Diff line
@@ -185,7 +185,6 @@ enum npc_kpu_parser_state {
	NPC_S_KPU2_QINQ,
	NPC_S_KPU2_ETAG,
	NPC_S_KPU2_EXDSA,
	NPC_S_KPU2_NGIO,
	NPC_S_KPU2_CPT_CTAG,
	NPC_S_KPU2_CPT_QINQ,
	NPC_S_KPU3_CTAG,
@@ -212,6 +211,7 @@ enum npc_kpu_parser_state {
	NPC_S_KPU5_NSH,
	NPC_S_KPU5_CPT_IP,
	NPC_S_KPU5_CPT_IP6,
	NPC_S_KPU5_NGIO,
	NPC_S_KPU6_IP6_EXT,
	NPC_S_KPU6_IP6_HOP_DEST,
	NPC_S_KPU6_IP6_ROUT,
@@ -1120,15 +1120,6 @@ static struct npc_kpu_profile_cam kpu1_cam_entries[] = {
		0x0000,
		0x0000,
	},
	{
		NPC_S_KPU1_ETHER, 0xff,
		NPC_ETYPE_CTAG,
		0xffff,
		NPC_ETYPE_NGIO,
		0xffff,
		0x0000,
		0x0000,
	},
	{
		NPC_S_KPU1_ETHER, 0xff,
		NPC_ETYPE_CTAG,
@@ -1966,6 +1957,15 @@ static struct npc_kpu_profile_cam kpu2_cam_entries[] = {
		0x0000,
		0x0000,
	},
	{
		NPC_S_KPU2_CTAG, 0xff,
		NPC_ETYPE_NGIO,
		0xffff,
		0x0000,
		0x0000,
		0x0000,
		0x0000,
	},
	{
		NPC_S_KPU2_CTAG, 0xff,
		NPC_ETYPE_PPPOE,
@@ -2749,15 +2749,6 @@ static struct npc_kpu_profile_cam kpu2_cam_entries[] = {
		0x0000,
		0x0000,
	},
	{
		NPC_S_KPU2_NGIO, 0xff,
		0x0000,
		0x0000,
		0x0000,
		0x0000,
		0x0000,
		0x0000,
	},
	{
		NPC_S_KPU2_CPT_CTAG, 0xff,
		NPC_ETYPE_IP,
@@ -5089,6 +5080,15 @@ static struct npc_kpu_profile_cam kpu5_cam_entries[] = {
		0x0000,
		0x0000,
	},
	{
		NPC_S_KPU5_NGIO, 0xff,
		0x0000,
		0x0000,
		0x0000,
		0x0000,
		0x0000,
		0x0000,
	},
	{
		NPC_S_NA, 0X00,
		0x0000,
@@ -8422,14 +8422,6 @@ static struct npc_kpu_profile_action kpu1_action_entries[] = {
		0,
		0, 0, 0, 0,
	},
	{
		NPC_ERRLEV_RE, NPC_EC_NOERR,
		8, 12, 0, 0, 0,
		NPC_S_KPU2_NGIO, 12, 1,
		NPC_LID_LA, NPC_LT_LA_ETHER,
		0,
		0, 0, 0, 0,
	},
	{
		NPC_ERRLEV_RE, NPC_EC_NOERR,
		8, 12, 0, 0, 0,
@@ -9194,6 +9186,14 @@ static struct npc_kpu_profile_action kpu2_action_entries[] = {
		0,
		0, 0, 0, 0,
	},
	{
		NPC_ERRLEV_RE, NPC_EC_NOERR,
		0, 0, 0, 2, 0,
		NPC_S_KPU5_NGIO, 6, 1,
		NPC_LID_LB, NPC_LT_LB_CTAG,
		0,
		0, 0, 0, 0,
	},
	{
		NPC_ERRLEV_RE, NPC_EC_NOERR,
		8, 0, 6, 2, 0,
@@ -9890,14 +9890,6 @@ static struct npc_kpu_profile_action kpu2_action_entries[] = {
		NPC_F_LB_U_UNK_ETYPE | NPC_F_LB_L_EXDSA,
		0, 0, 0, 0,
	},
	{
		NPC_ERRLEV_RE, NPC_EC_NOERR,
		0, 0, 0, 0, 1,
		NPC_S_NA, 0, 1,
		NPC_LID_LC, NPC_LT_LC_NGIO,
		0,
		0, 0, 0, 0,
	},
	{
		NPC_ERRLEV_RE, NPC_EC_NOERR,
		8, 0, 6, 2, 0,
@@ -11973,6 +11965,14 @@ static struct npc_kpu_profile_action kpu5_action_entries[] = {
		0,
		0, 0, 0, 0,
	},
	{
		NPC_ERRLEV_RE, NPC_EC_NOERR,
		0, 0, 0, 0, 1,
		NPC_S_NA, 0, 1,
		NPC_LID_LC, NPC_LT_LC_NGIO,
		0,
		0, 0, 0, 0,
	},
	{
		NPC_ERRLEV_LC, NPC_EC_UNK,
		0, 0, 0, 0, 1,