1 /* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */
2 /* Copyright (c) 2021 Mellanox Technologies Ltd */
3 
4 #ifndef __MLX5_ESW_LEGACY_H__
5 #define __MLX5_ESW_LEGACY_H__
6 
7 #define MLX5_LEGACY_SRIOV_VPORT_EVENTS (MLX5_VPORT_UC_ADDR_CHANGE | \
8 					MLX5_VPORT_MC_ADDR_CHANGE | \
9 					MLX5_VPORT_PROMISC_CHANGE)
10 
11 struct mlx5_eswitch;
12 
13 int esw_legacy_enable(struct mlx5_eswitch *esw);
14 void esw_legacy_disable(struct mlx5_eswitch *esw);
15 
16 int esw_legacy_vport_acl_setup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
17 void esw_legacy_vport_acl_cleanup(struct mlx5_eswitch *esw, struct mlx5_vport *vport);
18 
19 int mlx5_esw_query_vport_drop_stats(struct mlx5_core_dev *dev,
20 				    struct mlx5_vport *vport,
21 				    struct mlx5_vport_drop_stats *stats);
22 #endif
23