blob: 0fe7ad35e36fd148393e898d83363d88703b5043 [file] [log] [blame]
/* SPDX-License-Identifier: GPL-2.0 */
/* Marvell RVU Admin Function driver
*
* Copyright (C) 2018 Marvell.
*
*/
#ifndef NPC_PROFILE_H
#define NPC_PROFILE_H
#define NPC_KPU_PROFILE_VER 0x0000000100070000
#define NPC_KPU_VER_MAJ(ver) ((u16)(((ver) >> 32) & 0xFFFF))
#define NPC_KPU_VER_MIN(ver) ((u16)(((ver) >> 16) & 0xFFFF))
#define NPC_KPU_VER_PATCH(ver) ((u16)((ver) & 0xFFFF))
#define NPC_IH_W 0x8000
#define NPC_IH_UTAG 0x2000
#define NPC_ETYPE_IP 0x0800
#define NPC_ETYPE_IP6 0x86dd
#define NPC_ETYPE_ARP 0x0806
#define NPC_ETYPE_RARP 0x8035
#define NPC_ETYPE_NGIO 0x8842
#define NPC_ETYPE_MPLSU 0x8847
#define NPC_ETYPE_MPLSM 0x8848
#define NPC_ETYPE_ETAG 0x893f
#define NPC_ETYPE_CTAG 0x8100
#define NPC_ETYPE_SBTAG 0x88a8
#define NPC_ETYPE_ITAG 0x88e7
#define NPC_ETYPE_PTP 0x88f7
#define NPC_ETYPE_FCOE 0x8906
#define NPC_ETYPE_QINQ 0x9100
#define NPC_ETYPE_TRANS_ETH_BR 0x6558
#define NPC_ETYPE_PPP 0x880b
#define NPC_ETYPE_NSH 0x894f
#define NPC_ETYPE_DSA 0xdada
#define NPC_ETYPE_PPPOE 0x8864
#define NPC_PPP_IP 0x0021
#define NPC_PPP_IP6 0x0057
#define NPC_IPNH_HOP 0
#define NPC_IPNH_ICMP 1
#define NPC_IPNH_IGMP 2
#define NPC_IPNH_IP 4
#define NPC_IPNH_TCP 6
#define NPC_IPNH_UDP 17
#define NPC_IPNH_IP6 41
#define NPC_IPNH_ROUT 43
#define NPC_IPNH_FRAG 44
#define NPC_IPNH_GRE 47
#define NPC_IPNH_ESP 50
#define NPC_IPNH_AH 51
#define NPC_IPNH_ICMP6 58
#define NPC_IPNH_NONH 59
#define NPC_IPNH_DEST 60
#define NPC_IPNH_SCTP 132
#define NPC_IPNH_MOBILITY 135
#define NPC_IPNH_MPLS 137
#define NPC_IPNH_HOSTID 139
#define NPC_IPNH_SHIM6 140
#define NPC_UDP_PORT_PTP_E 319
#define NPC_UDP_PORT_PTP_G 320
#define NPC_UDP_PORT_GTPC 2123
#define NPC_UDP_PORT_GTPU 2152
#define NPC_UDP_PORT_VXLAN 4789
#define NPC_UDP_PORT_VXLANGPE 4790
#define NPC_UDP_PORT_GENEVE 6081
#define NPC_UDP_PORT_MPLS 6635
#define NPC_UDP_PORT_ESP 4500
#define NPC_VXLANGPE_NP_IP 0x1
#define NPC_VXLANGPE_NP_IP6 0x2
#define NPC_VXLANGPE_NP_ETH 0x3
#define NPC_VXLANGPE_NP_NSH 0x4
#define NPC_VXLANGPE_NP_MPLS 0x5
#define NPC_VXLANGPE_NP_GBP 0x6
#define NPC_VXLANGPE_NP_VBNG 0x7
#define NPC_NSH_NP_IP 0x1
#define NPC_NSH_NP_IP6 0x2
#define NPC_NSH_NP_ETH 0x3
#define NPC_NSH_NP_NSH 0x4
#define NPC_NSH_NP_MPLS 0x5
#define NPC_TCP_PORT_HTTP 80
#define NPC_TCP_PORT_HTTPS 443
#define NPC_TCP_PORT_PPTP 1723
#define NPC_MPLS_S 0x0100
#define NPC_IP_TTL_MASK 0xff00
#define NPC_IP_VER_4 0x4000
#define NPC_IP_VER_6 0x6000
#define NPC_IP_VER_MASK 0xf000
#define NPC_IP_HDR_LEN_5 0x0500
#define NPC_IP_HDR_LEN_MASK 0x0f00
#define NPC_IP_HDR_MF 0x2000
#define NPC_IP_HDR_FRAGOFF 0x1fff
#define NPC_IP6_HOP_MASK 0x00ff
#define NPC_IP6_FRAG_FRAGOFF 0xfff8
#define NPC_GRE_F_CSUM (0x1 << 15)
#define NPC_GRE_F_ROUTE (0x1 << 14)
#define NPC_GRE_F_KEY (0x1 << 13)
#define NPC_GRE_F_SEQ (0x1 << 12)
#define NPC_GRE_F_ACK (0x1 << 7)
#define NPC_GRE_FLAG_MASK (NPC_GRE_F_CSUM | NPC_GRE_F_ROUTE | \
NPC_GRE_F_KEY | NPC_GRE_F_SEQ | NPC_GRE_F_ACK)
#define NPC_GRE_VER_MASK 0x0003
#define NPC_GRE_VER_1 0x0001
#define NPC_VXLAN_I 0x0800
#define NPC_VXLANGPE_VER (0x3 << 12)
#define NPC_VXLANGPE_I (0x1 << 11)
#define NPC_VXLANGPE_P (0x1 << 10)
#define NPC_VXLANGPE_B (0x1 << 9)
#define NPC_VXLANGPE_NP_MASK 0x00ff
#define NPC_NSH_NP_MASK 0x00ff
#define NPC_GENEVE_F_OAM (0x1 << 7)
#define NPC_GENEVE_F_CRI_OPT (0x1 << 6)
#define NPC_GTP_PT_GTP (0x1 << 12)
#define NPC_GTP_PT_MASK (0x1 << 12)
#define NPC_GTP_VER1 (0x1 << 13)
#define NPC_GTP_VER_MASK (0x7 << 13)
#define NPC_GTP_MT_G_PDU 0xff
#define NPC_GTP_MT_MASK 0xff
#define NPC_TCP_FLAGS_FIN 0x0001
#define NPC_TCP_FLAGS_SYN 0x0002
#define NPC_TCP_FLAGS_RST 0x0004
#define NPC_TCP_FLAGS_PSH 0x0008
#define NPC_TCP_FLAGS_ACK 0x0010
#define NPC_TCP_FLAGS_URG 0x0020
#define NPC_TCP_FLAGS_MASK 0x003f
#define NPC_TCP_DATA_OFFSET_5 0x5000
#define NPC_TCP_DATA_OFFSET_MASK 0xf000
#define NPC_DSA_EXTEND 0x1000
#define NPC_DSA_EDSA 0x8000
#define NPC_DSA_FDSA 0xc000
#define NPC_KEXOF_DMAC 9
#define MKEX_SIGN 0x19bbfdbd15f
#define KEX_LD_CFG(bytesm1, hdr_ofs, ena, flags_ena, key_ofs) \
(((bytesm1) << 16) | ((hdr_ofs) << 8) | ((ena) << 7) | \
((flags_ena) << 6) | ((key_ofs) & 0x3F))
/* Rx parse key extract nibble enable */
#define NPC_PARSE_NIBBLE_INTF_RX (NPC_PARSE_NIBBLE_CHAN | \
NPC_PARSE_NIBBLE_ERRCODE | \
NPC_PARSE_NIBBLE_LA_LTYPE | \
NPC_PARSE_NIBBLE_LB_LTYPE | \
NPC_PARSE_NIBBLE_LC_LTYPE | \
NPC_PARSE_NIBBLE_LD_LTYPE | \
NPC_PARSE_NIBBLE_LE_LTYPE)
/* Tx parse key extract nibble enable */
#define NPC_PARSE_NIBBLE_INTF_TX (NPC_PARSE_NIBBLE_LA_LTYPE | \
NPC_PARSE_NIBBLE_LB_LTYPE | \
NPC_PARSE_NIBBLE_LC_LTYPE | \
NPC_PARSE_NIBBLE_LD_LTYPE | \
NPC_PARSE_NIBBLE_LE_LTYPE)
enum npc_kpu_parser_state {
NPC_S_NA = 0,
NPC_S_KPU1_ETHER,
NPC_S_KPU1_IH_NIX,
NPC_S_KPU1_IH,
NPC_S_KPU1_EXDSA,
NPC_S_KPU1_HIGIG2,
NPC_S_KPU1_IH_NIX_HIGIG2,
NPC_S_KPU1_CUSTOM_PRE_L2,
NPC_S_KPU1_CPT_HDR,
NPC_S_KPU1_VLAN_EXDSA,
NPC_S_KPU2_CTAG,
NPC_S_KPU2_CTAG2,
NPC_S_KPU2_SBTAG,
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,
NPC_S_KPU3_STAG,
NPC_S_KPU3_QINQ,
NPC_S_KPU3_CTAG_C,
NPC_S_KPU3_STAG_C,
NPC_S_KPU3_QINQ_C,
NPC_S_KPU3_DSA,
NPC_S_KPU3_VLAN_EXDSA,
NPC_S_KPU4_MPLS,
NPC_S_KPU4_NSH,
NPC_S_KPU4_FDSA,
NPC_S_KPU4_VLAN_EXDSA,
NPC_S_KPU4_PPPOE,
NPC_S_KPU5_IP,
NPC_S_KPU5_IP6,
NPC_S_KPU5_ARP,
NPC_S_KPU5_RARP,
NPC_S_KPU5_PTP,
NPC_S_KPU5_FCOE,
NPC_S_KPU5_MPLS,
NPC_S_KPU5_MPLS_PL,
NPC_S_KPU5_NSH,
NPC_S_KPU5_CPT_IP,
NPC_S_KPU5_CPT_IP6,
NPC_S_KPU6_IP6_EXT,
NPC_S_KPU6_IP6_HOP_DEST,
NPC_S_KPU6_IP6_ROUT,
NPC_S_KPU6_IP6_FRAG,
NPC_S_KPU6_IP6_CPT_FRAG,
NPC_S_KPU6_IP6_CPT_HOP_DEST,
NPC_S_KPU6_IP6_CPT_ROUT,
NPC_S_KPU7_IP6_EXT,
NPC_S_KPU7_IP6_ROUT,
NPC_S_KPU7_IP6_FRAG,
NPC_S_KPU7_CPT_IP6_FRAG,
NPC_S_KPU8_TCP,
NPC_S_KPU8_UDP,
NPC_S_KPU8_SCTP,
NPC_S_KPU8_ICMP,
NPC_S_KPU8_IGMP,
NPC_S_KPU8_ICMP6,
NPC_S_KPU8_GRE,
NPC_S_KPU8_AH,
NPC_S_KPU9_TU_MPLS_IN_GRE,
NPC_S_KPU9_TU_MPLS_IN_NSH,
NPC_S_KPU9_TU_MPLS_IN_IP,
NPC_S_KPU9_TU_MPLS_IN_UDP,
NPC_S_KPU9_TU_NSH_IN_GRE,
NPC_S_KPU9_VXLAN,
NPC_S_KPU9_VXLANGPE,
NPC_S_KPU9_GENEVE,
NPC_S_KPU9_GTPC,
NPC_S_KPU9_GTPU,
NPC_S_KPU9_ESP,
NPC_S_KPU10_TU_MPLS_IN_VXLANGPE,
NPC_S_KPU10_TU_MPLS_PL,
NPC_S_KPU10_TU_MPLS,
NPC_S_KPU10_TU_NSH_IN_VXLANGPE,
NPC_S_KPU11_TU_ETHER,
NPC_S_KPU11_TU_PPP,
NPC_S_KPU11_TU_MPLS_IN_NSH,
NPC_S_KPU11_TU_MPLS_PL,
NPC_S_KPU11_TU_MPLS,
NPC_S_KPU11_TU_ETHER_IN_NSH,
NPC_S_KPU12_TU_IP,
NPC_S_KPU12_TU_IP6,
NPC_S_KPU12_TU_ARP,
NPC_S_KPU13_TU_IP6_EXT,
NPC_S_KPU14_TU_IP6_EXT,
NPC_S_KPU15_TU_TCP,
NPC_S_KPU15_TU_UDP,
NPC_S_KPU15_TU_SCTP,
NPC_S_KPU15_TU_ICMP,
NPC_S_KPU15_TU_IGMP,
NPC_S_KPU15_TU_ICMP6,
NPC_S_KPU15_TU_ESP,
NPC_S_KPU15_TU_AH,
NPC_S_KPU16_HTTP_DATA,
NPC_S_KPU16_HTTPS_DATA,
NPC_S_KPU16_PPTP_DATA,
NPC_S_KPU16_TCP_DATA,
NPC_S_KPU16_UDP_DATA,
NPC_S_KPU16_UDP_PTP,
NPC_S_LAST /* has to be the last item */
};
enum npc_kpu_la_uflag {
NPC_F_LA_U_HAS_TAG = 0x10,
NPC_F_LA_U_HAS_IH_NIX = 0x20,
NPC_F_LA_U_HAS_HIGIG2 = 0x40,
};
enum npc_kpu_la_lflag {
NPC_F_LA_L_UNK_ETYPE = 1,
NPC_F_LA_L_WITH_VLAN,
NPC_F_LA_L_WITH_ETAG,
NPC_F_LA_L_WITH_MPLS,
NPC_F_LA_L_WITH_NSH,
};
enum npc_kpu_lb_uflag {
NPC_F_LB_U_UNK_ETYPE = 0x80,
NPC_F_LB_U_MORE_TAG = 0x40,
};
enum npc_kpu_lb_lflag {
NPC_F_LB_L_WITH_CTAG = 1,
NPC_F_LB_L_WITH_CTAG_UNK,
NPC_F_LB_L_WITH_STAG_CTAG,
NPC_F_LB_L_WITH_STAG_STAG,
NPC_F_LB_L_WITH_QINQ_CTAG,
NPC_F_LB_L_WITH_QINQ_QINQ,
NPC_F_LB_L_WITH_ITAG,
NPC_F_LB_L_WITH_ITAG_STAG,
NPC_F_LB_L_WITH_ITAG_CTAG,
NPC_F_LB_L_WITH_ITAG_UNK,
NPC_F_LB_L_WITH_BTAG_ITAG,
NPC_F_LB_L_WITH_STAG,
NPC_F_LB_L_WITH_QINQ,
NPC_F_LB_L_DSA,
NPC_F_LB_L_DSA_VLAN,
NPC_F_LB_L_EDSA,
NPC_F_LB_L_EDSA_VLAN,
NPC_F_LB_L_EXDSA,
NPC_F_LB_L_EXDSA_VLAN,
NPC_F_LB_L_FDSA,
};
enum npc_kpu_lc_uflag {
NPC_F_LC_U_UNK_PROTO = 0x10,
NPC_F_LC_U_IP_FRAG = 0x20,
NPC_F_LC_U_IP6_FRAG = 0x40,
};
enum npc_kpu_lc_lflag {
NPC_F_LC_L_IP_IN_IP = 1,
NPC_F_LC_L_6TO4,
NPC_F_LC_L_MPLS_IN_IP,
NPC_F_LC_L_IP6_TUN_IP6,
NPC_F_LC_L_IP6_MPLS_IN_IP,
NPC_F_LC_L_MPLS_4_LABELS,
NPC_F_LC_L_MPLS_3_LABELS,
NPC_F_LC_L_MPLS_2_LABELS,
NPC_F_LC_L_EXT_HOP,
NPC_F_LC_L_EXT_DEST,
NPC_F_LC_L_EXT_ROUT,
NPC_F_LC_L_EXT_MOBILITY,
NPC_F_LC_L_EXT_HOSTID,
NPC_F_LC_L_EXT_SHIM6,
};
enum npc_kpu_ld_lflag {
NPC_F_LD_L_TCP_UNK_PORT = 1,
NPC_F_LD_L_TCP_HAS_OPTIONS,
NPC_F_LD_L_TCP_UNK_PORT_HAS_OPTIONS,
NPC_F_LD_L_UDP_UNK_PORT,
NPC_F_LD_L_GRE_NVGRE,
NPC_F_LD_L_GRE_HAS_SRE,
NPC_F_LD_L_GRE_HAS_CSUM,
NPC_F_LD_L_GRE_HAS_KEY,
NPC_F_LD_L_GRE_HAS_SEQ,
NPC_F_LD_L_GRE_HAS_CSUM_KEY,
NPC_F_LD_L_GRE_HAS_CSUM_SEQ,
NPC_F_LD_L_GRE_HAS_KEY_SEQ,
NPC_F_LD_L_GRE_HAS_CSUM_KEY_SEQ,
NPC_F_LD_L_GRE_HAS_ROUTE,
NPC_F_LD_L_GRE_UNK_PROTO,
NPC_F_LD_L_GRE_VER1,
NPC_F_LD_L_GRE_VER1_HAS_SEQ,
NPC_F_LD_L_GRE_VER1_HAS_ACK,
NPC_F_LD_L_GRE_VER1_HAS_SEQ_ACK,
NPC_F_LD_L_GRE_VER1_UNK_PROTO,
NPC_F_LD_L_MPLS_4_LABELS,
NPC_F_LD_L_MPLS_3_LABELS,
NPC_F_LD_L_MPLS_2_LABELS,
};
enum npc_kpu_le_lflag {
NPC_F_LE_L_VXLAN_NOVNI,
NPC_F_LE_L_VXLANGPE_NOVNI,
NPC_F_LE_L_VXLANGPE_UNK,
NPC_F_LE_L_VXLANGPE_NONP,
NPC_F_LE_L_GENEVE_OAM,
NPC_F_LE_L_GENEVE_CRI_OPT,
NPC_F_LE_L_GENEVE_OAM_CRI_OPT,
NPC_F_LE_L_GTPU_G_PDU,
NPC_F_LE_L_GTPU_UNK,
};
enum npc_kpu_lf_uflag {
NPC_F_LF_U_UNK_ETYPE = 0x10,
NPC_F_LF_U_HAS_TAG = 0x20,
};
enum npc_kpu_lf_lflag {
NPC_F_LF_L_WITH_CTAG = 1,
NPC_F_LF_L_WITH_STAG_CTAG,
NPC_F_LF_L_WITH_STAG,
NPC_F_LF_L_WITH_QINQ_CTAG,
NPC_F_LF_L_WITH_QINQ,
};
enum npc_kpu_lg_uflag {
NPC_F_LG_U_UNK_IP_PROTO = 0x10,
NPC_F_LG_U_IP_HAS_OPTIONS = 0x20,
NPC_F_LG_U_IP6_HAS_EXT = 0x40,
};
enum npc_kpu_lh_uflag {
NPC_F_LH_U_TCP_HAS_OPTIONS = 0x80,
};
enum npc_kpu_lh_lflag {
NPC_F_LH_L_TCP_HTTP = 1,
NPC_F_LH_L_TCP_HTTPS,
NPC_F_LH_L_TCP_PPTP,
NPC_F_LH_L_TCP_UNK_PORT,
NPC_F_LH_L_UDP_UNK_PORT,
};
enum npc_kpu_err_code {
NPC_EC_NOERR = 0, /* has to be zero */
NPC_EC_UNK,
NPC_EC_IH_LENGTH,
NPC_EC_EDSA_UNK,
NPC_EC_L2_K1,
NPC_EC_L2_K2,
NPC_EC_L2_K3,
NPC_EC_L2_K3_ETYPE_UNK,
NPC_EC_L2_K4,
NPC_EC_MPLS_2MANY,
NPC_EC_MPLS_UNK,
NPC_EC_NSH_UNK,
NPC_EC_IP_TTL_0,
NPC_EC_IP_FRAG_OFFSET_1,
NPC_EC_IP_VER,
NPC_EC_IP6_HOP_0,
NPC_EC_IP6_VER,
NPC_EC_TCP_FLAGS_FIN_ONLY,
NPC_EC_TCP_FLAGS_ZERO,
NPC_EC_TCP_FLAGS_RST_FIN,
NPC_EC_TCP_FLAGS_URG_SYN,
NPC_EC_TCP_FLAGS_RST_SYN,
NPC_EC_TCP_FLAGS_SYN_FIN,
NPC_EC_VXLAN,
NPC_EC_NVGRE,
NPC_EC_GRE,
NPC_EC_GRE_VER1,
NPC_EC_L4,
NPC_EC_OIP4_CSUM,
NPC_EC_IIP4_CSUM,
NPC_EC_LAST /* has to be the last item */
};
enum NPC_ERRLEV_E {
NPC_ERRLEV_RE = 0,
NPC_ERRLEV_LA = 1,
NPC_ERRLEV_LB = 2,
NPC_ERRLEV_LC = 3,
NPC_ERRLEV_LD = 4,
NPC_ERRLEV_LE = 5,
NPC_ERRLEV_LF = 6,
NPC_ERRLEV_LG = 7,
NPC_ERRLEV_LH = 8,
NPC_ERRLEV_R9 = 9,
NPC_ERRLEV_R10 = 10,
NPC_ERRLEV_R11 = 11,
NPC_ERRLEV_R12 = 12,
NPC_ERRLEV_R13 = 13,
NPC_ERRLEV_R14 = 14,
NPC_ERRLEV_NIX = 15,
NPC_ERRLEV_ENUM_LAST = 16,
};
#define NPC_KPU_NOP_CAM \
{ \
NPC_S_NA, 0xff, \
0x0000, \
0x0000, \
0x0000, \
0x0000, \
0x0000, \
0x0000, \
}
#define NPC_KPU_NOP_ACTION \
{ \
NPC_ERRLEV_RE, NPC_EC_NOERR, \
0, 0, 0, 0, 0, \
NPC_S_NA, 0, 0, \
NPC_LID_LA, NPC_LT_NA, \
0, \
0, 0, 0, 0, \
}
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,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_ETHER, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_CUSTOM_PRE_L2, 0, 1,
NPC_LID_LA, NPC_LT_LA_CUSTOM_PRE_L2_ETHER,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_VLAN_EXDSA, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_CUSTOM_PRE_L2, 24, 1,
NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_24B_ETHER,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_CPT_HDR, 40, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 7, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 16, 20, 0, 0,
NPC_S_KPU1_CUSTOM_PRE_L2, 90, 1,
NPC_LID_LA, NPC_LT_LA_CUSTOM_L2_90B_ETHER,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
36, 40, 44, 0, 0,
NPC_S_KPU1_IH_NIX_HIGIG2, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
28, 32, 36, 0, 0,
NPC_S_KPU1_HIGIG2, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
12, 14, 20, 0, 0,
NPC_S_KPU1_EXDSA, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
{
NPC_ERRLEV_RE, NPC_EC_NOERR,
20, 24, 28, 0, 0,
NPC_S_KPU1_IH_NIX, 0, 0,
NPC_LID_LA, NPC_LT_NA,
0,
0, 0, 0, 0,
},
};
static struct npc_kpu_profile_cam kpu1_cam_entries[] = {
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
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,
0xffff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_SBTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_QINQ,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_ETAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_DSA,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
NPC_ETYPE_PPPOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
0x0000,
0xfc00,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
0x0400,
0xfe00,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_ETHER, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_SBTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_QINQ,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_ETAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_EXDSA, 0xff,
0x0000,
0x0000,
NPC_DSA_EXTEND,
NPC_DSA_EXTEND,
0x0000,
0x0000,
},
{
NPC_S_KPU1_EXDSA, 0xff,
NPC_DSA_FDSA,
NPC_DSA_FDSA,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_EXDSA, 0xff,
0x0000,
NPC_DSA_EXTEND,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_SBTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_QINQ,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_ETAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_HIGIG2, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_SBTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_QINQ,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_ETAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_IH_NIX_HIGIG2, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_SBTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_QINQ,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_ETAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CUSTOM_PRE_L2, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CPT_HDR, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CPT_HDR, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CPT_HDR, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_CPT_HDR, 0xff,
NPC_ETYPE_QINQ,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU1_VLAN_EXDSA, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_NA, 0X00,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
};
static struct npc_kpu_profile_cam kpu2_cam_entries[] = {
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_PPPOE,
0xffff,
0x0000,
0x0000,
NPC_PPP_IP,
0xffff,
},
{
NPC_S_KPU2_CTAG, 0xff,
NPC_ETYPE_PPPOE,
0xffff,
0x0000,
0x0000,
NPC_PPP_IP6,
0xffff,
},
{
NPC_S_KPU2_CTAG, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_SBTAG,
0xffff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_SBTAG,
0xffff,
NPC_ETYPE_SBTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_IP,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_IP6,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_ARP,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_RARP,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_PTP,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_FCOE,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_MPLSU,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_MPLSM,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_NSH,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_SBTAG,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_CTAG,
0xffff,
},
{
NPC_S_KPU2_SBTAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_SBTAG, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_QINQ,
0xffff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
NPC_ETYPE_QINQ,
0xffff,
NPC_ETYPE_QINQ,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_QINQ, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_SBTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_QINQ,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_IP,
0xffff,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_IP6,
0xffff,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_ARP,
0xffff,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_SBTAG,
0xffff,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
NPC_ETYPE_CTAG,
0xffff,
},
{
NPC_S_KPU2_ETAG, 0xff,
NPC_ETYPE_ITAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_ETAG, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CTAG2, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
NPC_DSA_EDSA,
NPC_DSA_EDSA,
0x0000,
0x0000,
NPC_ETYPE_IP,
0xffff,
},
{
NPC_S_KPU2_EXDSA, 0xff,
NPC_DSA_EDSA,
NPC_DSA_EDSA,
0x0000,
0x0000,
NPC_ETYPE_IP6,
0xffff,
},
{
NPC_S_KPU2_EXDSA, 0xff,
NPC_DSA_EDSA,
NPC_DSA_EDSA,
0x0000,
0x0000,
NPC_ETYPE_ARP,
0xffff,
},
{
NPC_S_KPU2_EXDSA, 0xff,
NPC_DSA_EDSA,
NPC_DSA_EDSA,
0x0000,
0x0000,
NPC_ETYPE_RARP,
0xffff,
},
{
NPC_S_KPU2_EXDSA, 0xff,
NPC_DSA_EDSA,
NPC_DSA_EDSA,
0x0000,
0x0000,
NPC_ETYPE_PTP,
0xffff,
},
{
NPC_S_KPU2_EXDSA, 0xff,
NPC_DSA_EDSA,
NPC_DSA_EDSA,
0x0000,
0x0000,
NPC_ETYPE_FCOE,
0xffff,
},
{
NPC_S_KPU2_EXDSA, 0xff,
NPC_DSA_EDSA,
NPC_DSA_EDSA,
0x0000,
0x0000,
NPC_ETYPE_CTAG,
0xffff,
},
{
NPC_S_KPU2_EXDSA, 0xff,
NPC_DSA_EDSA,
NPC_DSA_EDSA,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
0x0000,
NPC_DSA_EDSA,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
0x0000,
NPC_DSA_EDSA,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
0x0000,
NPC_DSA_EDSA,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
0x0000,
NPC_DSA_EDSA,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
0x0000,
NPC_DSA_EDSA,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
0x0000,
NPC_DSA_EDSA,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
0x0000,
NPC_DSA_EDSA,
NPC_ETYPE_CTAG,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_EXDSA, 0xff,
0x0000,
NPC_DSA_EDSA,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_NGIO, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CPT_CTAG, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CPT_CTAG, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CPT_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU2_CPT_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_NA, 0X00,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
};
static struct npc_kpu_profile_cam kpu3_cam_entries[] = {
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
NPC_KPU_NOP_CAM,
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_STAG, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_CTAG,
0xffff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_IP6,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_ARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_RARP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_PTP,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_FCOE,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_MPLSU,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_MPLSM,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
NPC_ETYPE_NSH,
0xffff,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_QINQ, 0xff,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
0x0000,
},
{
NPC_S_KPU3_CTAG_C, 0xff,
NPC_ETYPE_IP,
0xffff,
0x0000,