aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
diff options
context:
space:
mode:
authorOz Shlomo <ozsh@mellanox.com>2018-10-28 08:34:51 +0200
committerSaeed Mahameed <saeedm@mellanox.com>2018-12-10 15:53:04 -0800
commitf5bc2c5de1015caf7e49b0bf9e7e97077736045a (patch)
tree5ea71610e5da4a673b30d618e19700fd83e78bad /drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
parentnet/mlx5e: Store eswitch uplink representor state on a dedicated struct (diff)
downloadlinux-dev-f5bc2c5de1015caf7e49b0bf9e7e97077736045a.tar.xz
linux-dev-f5bc2c5de1015caf7e49b0bf9e7e97077736045a.zip
net/mlx5e: Support TC indirect block notifications for eswitch uplink reprs
Towards using this mechanism as the means to offload tunnel decap rules set on SW tunnel devices instead of egdev, add the supporting structures and functions. Signed-off-by: Oz Shlomo <ozsh@mellanox.com> Reviewed-by: Eli Britstein <elibr@mellanox.com> Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/en_tc.c')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/en_tc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
index 42eb6ee37754..cb5bd3eaf738 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
@@ -2704,6 +2704,16 @@ out:
return err;
}
+bool mlx5e_tc_tun_device_to_offload(struct mlx5e_priv *priv,
+ struct net_device *netdev)
+{
+ if (netif_is_vxlan(netdev) &&
+ MLX5_CAP_ESW(priv->mdev, vxlan_encap_decap))
+ return true;
+
+ return false;
+}
+
static int mlx5e_attach_encap(struct mlx5e_priv *priv,
struct ip_tunnel_info *tun_info,
struct net_device *mirred_dev,