@@ -4045,23 +4045,22 @@ static const struct mlxsw_listener mlxsw_sp_listener[] = {
4045
4045
MLXSW_SP_RXL_NO_MARK (LACP , TRAP_TO_CPU , LACP , true),
4046
4046
MLXSW_RXL (mlxsw_sp_rx_listener_ptp , LLDP , TRAP_TO_CPU ,
4047
4047
false, SP_LLDP , DISCARD ),
4048
- MLXSW_SP_RXL_MARK (DHCP , MIRROR_TO_CPU , DHCP , false),
4049
- MLXSW_SP_RXL_MARK (IGMP_QUERY , MIRROR_TO_CPU , IGMP , false),
4050
- MLXSW_SP_RXL_NO_MARK (IGMP_V1_REPORT , TRAP_TO_CPU , IGMP , false),
4051
- MLXSW_SP_RXL_NO_MARK (IGMP_V2_REPORT , TRAP_TO_CPU , IGMP , false),
4052
- MLXSW_SP_RXL_NO_MARK (IGMP_V2_LEAVE , TRAP_TO_CPU , IGMP , false),
4053
- MLXSW_SP_RXL_NO_MARK (IGMP_V3_REPORT , TRAP_TO_CPU , IGMP , false),
4054
- MLXSW_SP_RXL_MARK (ARPBC , MIRROR_TO_CPU , ARP , false),
4055
- MLXSW_SP_RXL_MARK (ARPUC , MIRROR_TO_CPU , ARP , false),
4048
+ MLXSW_SP_RXL_MARK (IGMP_QUERY , MIRROR_TO_CPU , MC_SNOOPING , false),
4049
+ MLXSW_SP_RXL_NO_MARK (IGMP_V1_REPORT , TRAP_TO_CPU , MC_SNOOPING , false),
4050
+ MLXSW_SP_RXL_NO_MARK (IGMP_V2_REPORT , TRAP_TO_CPU , MC_SNOOPING , false),
4051
+ MLXSW_SP_RXL_NO_MARK (IGMP_V2_LEAVE , TRAP_TO_CPU , MC_SNOOPING , false),
4052
+ MLXSW_SP_RXL_NO_MARK (IGMP_V3_REPORT , TRAP_TO_CPU , MC_SNOOPING , false),
4053
+ MLXSW_SP_RXL_MARK (ARPBC , MIRROR_TO_CPU , NEIGH_DISCOVERY , false),
4054
+ MLXSW_SP_RXL_MARK (ARPUC , MIRROR_TO_CPU , NEIGH_DISCOVERY , false),
4056
4055
MLXSW_SP_RXL_NO_MARK (FID_MISS , TRAP_TO_CPU , IP2ME , false),
4057
- MLXSW_SP_RXL_MARK (IPV6_MLDV12_LISTENER_QUERY , MIRROR_TO_CPU , IPV6_MLD ,
4058
- false),
4059
- MLXSW_SP_RXL_NO_MARK (IPV6_MLDV1_LISTENER_REPORT , TRAP_TO_CPU , IPV6_MLD ,
4060
- false),
4061
- MLXSW_SP_RXL_NO_MARK (IPV6_MLDV1_LISTENER_DONE , TRAP_TO_CPU , IPV6_MLD ,
4062
- false),
4063
- MLXSW_SP_RXL_NO_MARK (IPV6_MLDV2_LISTENER_REPORT , TRAP_TO_CPU , IPV6_MLD ,
4056
+ MLXSW_SP_RXL_MARK (IPV6_MLDV12_LISTENER_QUERY , MIRROR_TO_CPU ,
4057
+ MC_SNOOPING , false),
4058
+ MLXSW_SP_RXL_NO_MARK (IPV6_MLDV1_LISTENER_REPORT , TRAP_TO_CPU ,
4059
+ MC_SNOOPING , false),
4060
+ MLXSW_SP_RXL_NO_MARK (IPV6_MLDV1_LISTENER_DONE , TRAP_TO_CPU , MC_SNOOPING ,
4064
4061
false),
4062
+ MLXSW_SP_RXL_NO_MARK (IPV6_MLDV2_LISTENER_REPORT , TRAP_TO_CPU ,
4063
+ MC_SNOOPING , false),
4065
4064
/* L3 traps */
4066
4065
MLXSW_SP_RXL_L3_MARK (LBERROR , MIRROR_TO_CPU , LBERROR , false),
4067
4066
MLXSW_SP_RXL_MARK (IP2ME , TRAP_TO_CPU , IP2ME , false),
@@ -4074,18 +4073,19 @@ static const struct mlxsw_listener mlxsw_sp_listener[] = {
4074
4073
false),
4075
4074
MLXSW_SP_RXL_MARK (IPV4_OSPF , TRAP_TO_CPU , OSPF , false),
4076
4075
MLXSW_SP_RXL_MARK (IPV6_OSPF , TRAP_TO_CPU , OSPF , false),
4076
+ MLXSW_SP_RXL_MARK (IPV4_DHCP , TRAP_TO_CPU , DHCP , false),
4077
4077
MLXSW_SP_RXL_MARK (IPV6_DHCP , TRAP_TO_CPU , DHCP , false),
4078
4078
MLXSW_SP_RXL_MARK (RTR_INGRESS0 , TRAP_TO_CPU , REMOTE_ROUTE , false),
4079
4079
MLXSW_SP_RXL_MARK (IPV4_BGP , TRAP_TO_CPU , BGP , false),
4080
4080
MLXSW_SP_RXL_MARK (IPV6_BGP , TRAP_TO_CPU , BGP , false),
4081
4081
MLXSW_SP_RXL_MARK (L3_IPV6_ROUTER_SOLICITATION , TRAP_TO_CPU , IPV6_ND ,
4082
4082
false),
4083
- MLXSW_SP_RXL_MARK (L3_IPV6_ROUTER_ADVERTISMENT , TRAP_TO_CPU , IPV6_ND ,
4084
- false),
4085
- MLXSW_SP_RXL_MARK (L3_IPV6_NEIGHBOR_SOLICITATION , TRAP_TO_CPU , IPV6_ND ,
4086
- false),
4087
- MLXSW_SP_RXL_MARK (L3_IPV6_NEIGHBOR_ADVERTISMENT , TRAP_TO_CPU , IPV6_ND ,
4083
+ MLXSW_SP_RXL_MARK (L3_IPV6_ROUTER_ADVERTISEMENT , TRAP_TO_CPU , IPV6_ND ,
4088
4084
false),
4085
+ MLXSW_SP_RXL_MARK (L3_IPV6_NEIGHBOR_SOLICITATION , TRAP_TO_CPU ,
4086
+ NEIGH_DISCOVERY , false),
4087
+ MLXSW_SP_RXL_MARK (L3_IPV6_NEIGHBOR_ADVERTISEMENT , TRAP_TO_CPU ,
4088
+ NEIGH_DISCOVERY , false),
4089
4089
MLXSW_SP_RXL_MARK (L3_IPV6_REDIRECTION , TRAP_TO_CPU , IPV6_ND , false),
4090
4090
MLXSW_SP_RXL_MARK (IPV6_MC_LINK_LOCAL_DEST , TRAP_TO_CPU , ROUTER_EXP ,
4091
4091
false),
@@ -4103,7 +4103,7 @@ static const struct mlxsw_listener mlxsw_sp_listener[] = {
4103
4103
ROUTER_EXP , false),
4104
4104
/* PKT Sample trap */
4105
4105
MLXSW_RXL (mlxsw_sp_rx_listener_sample_func , PKT_SAMPLE , MIRROR_TO_CPU ,
4106
- false, SP_IP2ME , DISCARD ),
4106
+ false, SP_PKT_SAMPLE , DISCARD ),
4107
4107
/* ACL trap */
4108
4108
MLXSW_SP_RXL_NO_MARK (ACL0 , TRAP_TO_CPU , IP2ME , false),
4109
4109
/* Multicast Router Traps */
@@ -4112,8 +4112,9 @@ static const struct mlxsw_listener mlxsw_sp_listener[] = {
4112
4112
MLXSW_SP_RXL_MARK (ACL1 , TRAP_TO_CPU , MULTICAST , false),
4113
4113
MLXSW_SP_RXL_L3_MARK (ACL2 , TRAP_TO_CPU , MULTICAST , false),
4114
4114
/* NVE traps */
4115
- MLXSW_SP_RXL_MARK (NVE_ENCAP_ARP , TRAP_TO_CPU , ARP , false),
4116
- MLXSW_SP_RXL_NO_MARK (NVE_DECAP_ARP , TRAP_TO_CPU , ARP , false),
4115
+ MLXSW_SP_RXL_MARK (NVE_ENCAP_ARP , TRAP_TO_CPU , NEIGH_DISCOVERY , false),
4116
+ MLXSW_SP_RXL_NO_MARK (NVE_DECAP_ARP , TRAP_TO_CPU , NEIGH_DISCOVERY ,
4117
+ false),
4117
4118
/* PTP traps */
4118
4119
MLXSW_RXL (mlxsw_sp_rx_listener_ptp , PTP0 , TRAP_TO_CPU ,
4119
4120
false, SP_PTP0 , DISCARD ),
@@ -4152,17 +4153,16 @@ static int mlxsw_sp_cpu_policers_set(struct mlxsw_core *mlxsw_core)
4152
4153
case MLXSW_REG_HTGT_TRAP_GROUP_SP_OSPF :
4153
4154
case MLXSW_REG_HTGT_TRAP_GROUP_SP_PIM :
4154
4155
case MLXSW_REG_HTGT_TRAP_GROUP_SP_LBERROR :
4156
+ case MLXSW_REG_HTGT_TRAP_GROUP_SP_DHCP :
4155
4157
rate = 128 ;
4156
4158
burst_size = 7 ;
4157
4159
break ;
4158
- case MLXSW_REG_HTGT_TRAP_GROUP_SP_IGMP :
4159
- case MLXSW_REG_HTGT_TRAP_GROUP_SP_IPV6_MLD :
4160
+ case MLXSW_REG_HTGT_TRAP_GROUP_SP_MC_SNOOPING :
4160
4161
rate = 16 * 1024 ;
4161
4162
burst_size = 10 ;
4162
4163
break ;
4163
4164
case MLXSW_REG_HTGT_TRAP_GROUP_SP_BGP :
4164
- case MLXSW_REG_HTGT_TRAP_GROUP_SP_ARP :
4165
- case MLXSW_REG_HTGT_TRAP_GROUP_SP_DHCP :
4165
+ case MLXSW_REG_HTGT_TRAP_GROUP_SP_NEIGH_DISCOVERY :
4166
4166
case MLXSW_REG_HTGT_TRAP_GROUP_SP_ROUTER_EXP :
4167
4167
case MLXSW_REG_HTGT_TRAP_GROUP_SP_REMOTE_ROUTE :
4168
4168
case MLXSW_REG_HTGT_TRAP_GROUP_SP_IPV6_ND :
@@ -4231,19 +4231,18 @@ static int mlxsw_sp_trap_groups_set(struct mlxsw_core *mlxsw_core)
4231
4231
tc = 5 ;
4232
4232
break ;
4233
4233
case MLXSW_REG_HTGT_TRAP_GROUP_SP_BGP :
4234
- case MLXSW_REG_HTGT_TRAP_GROUP_SP_DHCP :
4235
4234
priority = 4 ;
4236
4235
tc = 4 ;
4237
4236
break ;
4238
- case MLXSW_REG_HTGT_TRAP_GROUP_SP_IGMP :
4237
+ case MLXSW_REG_HTGT_TRAP_GROUP_SP_MC_SNOOPING :
4239
4238
case MLXSW_REG_HTGT_TRAP_GROUP_SP_IP2ME :
4240
- case MLXSW_REG_HTGT_TRAP_GROUP_SP_IPV6_MLD :
4241
4239
priority = 3 ;
4242
4240
tc = 3 ;
4243
4241
break ;
4244
- case MLXSW_REG_HTGT_TRAP_GROUP_SP_ARP :
4242
+ case MLXSW_REG_HTGT_TRAP_GROUP_SP_NEIGH_DISCOVERY :
4245
4243
case MLXSW_REG_HTGT_TRAP_GROUP_SP_IPV6_ND :
4246
4244
case MLXSW_REG_HTGT_TRAP_GROUP_SP_PTP1 :
4245
+ case MLXSW_REG_HTGT_TRAP_GROUP_SP_DHCP :
4247
4246
priority = 2 ;
4248
4247
tc = 2 ;
4249
4248
break ;
@@ -4253,9 +4252,10 @@ static int mlxsw_sp_trap_groups_set(struct mlxsw_core *mlxsw_core)
4253
4252
priority = 1 ;
4254
4253
tc = 1 ;
4255
4254
break ;
4255
+ case MLXSW_REG_HTGT_TRAP_GROUP_SP_PKT_SAMPLE :
4256
4256
case MLXSW_REG_HTGT_TRAP_GROUP_SP_LBERROR :
4257
4257
priority = 0 ;
4258
- tc = 1 ;
4258
+ tc = 0 ;
4259
4259
break ;
4260
4260
case MLXSW_REG_HTGT_TRAP_GROUP_SP_EVENT :
4261
4261
priority = MLXSW_REG_HTGT_DEFAULT_PRIORITY ;
0 commit comments