aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlxsw/spectrum_mr.h
diff options
context:
space:
mode:
authorYotam Gigi <yotamg@mellanox.com>2017-10-03 09:58:11 +0200
committerDavid S. Miller <davem@davemloft.net>2017-10-03 10:06:30 -0700
commit607feadef89ac806df5a0be983afef77247e1541 (patch)
treef085aca8ca072e5c838073de7ac291c6fe9eb3ac /drivers/net/ethernet/mellanox/mlxsw/spectrum_mr.h
parentmlxsw: spectrum: Add trap for multicast trap-and-forward routes (diff)
downloadlinux-dev-607feadef89ac806df5a0be983afef77247e1541.tar.xz
linux-dev-607feadef89ac806df5a0be983afef77247e1541.zip
mlxsw: spectrum: mr_tcam: Add trap-and-forward multicast route
In addition to the current multicast route actions, which include trap route action and a forward route action, add the trap-and-forward multicast route action, and implement it in the multicast routing hardware logic. To implement that, add a trap-and-forward ACL action as the last action in the route flexible action set. The used trap is the ACL2 trap, which marks the packets with offload_mr_forward_mark, to prevent the packet from being forwarded again by the kernel. Note: At that stage the offloading logic does not support trap-and-forward multicast routes. This patch adds the support only in the hardware logic. Signed-off-by: Yotam Gigi <yotamg@mellanox.com> Reviewed-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlxsw/spectrum_mr.h')
-rw-r--r--drivers/net/ethernet/mellanox/mlxsw/spectrum_mr.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_mr.h b/drivers/net/ethernet/mellanox/mlxsw/spectrum_mr.h
index c851b237d253..5d26a122af49 100644
--- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_mr.h
+++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_mr.h
@@ -42,6 +42,7 @@
enum mlxsw_sp_mr_route_action {
MLXSW_SP_MR_ROUTE_ACTION_FORWARD,
MLXSW_SP_MR_ROUTE_ACTION_TRAP,
+ MLXSW_SP_MR_ROUTE_ACTION_TRAP_AND_FORWARD,
};
enum mlxsw_sp_mr_route_prio {