1*8ee72638SRoi Dayan /* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ 2*8ee72638SRoi Dayan /* Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. */ 3*8ee72638SRoi Dayan 4*8ee72638SRoi Dayan #ifndef __MLX5_EN_TC_ACT_VLAN_H__ 5*8ee72638SRoi Dayan #define __MLX5_EN_TC_ACT_VLAN_H__ 6*8ee72638SRoi Dayan 7*8ee72638SRoi Dayan #include <net/flow_offload.h> 8*8ee72638SRoi Dayan #include "en/tc_priv.h" 9*8ee72638SRoi Dayan 10*8ee72638SRoi Dayan struct pedit_headers_action; 11*8ee72638SRoi Dayan 12*8ee72638SRoi Dayan int 13*8ee72638SRoi Dayan mlx5e_tc_act_vlan_add_push_action(struct mlx5e_priv *priv, 14*8ee72638SRoi Dayan struct mlx5_flow_attr *attr, 15*8ee72638SRoi Dayan struct net_device **out_dev, 16*8ee72638SRoi Dayan struct netlink_ext_ack *extack); 17*8ee72638SRoi Dayan 18*8ee72638SRoi Dayan int 19*8ee72638SRoi Dayan mlx5e_tc_act_vlan_add_pop_action(struct mlx5e_priv *priv, 20*8ee72638SRoi Dayan struct mlx5_flow_attr *attr, 21*8ee72638SRoi Dayan struct netlink_ext_ack *extack); 22*8ee72638SRoi Dayan 23*8ee72638SRoi Dayan int 24*8ee72638SRoi Dayan mlx5e_tc_act_vlan_add_rewrite_action(struct mlx5e_priv *priv, int namespace, 25*8ee72638SRoi Dayan const struct flow_action_entry *act, 26*8ee72638SRoi Dayan struct mlx5e_tc_flow_parse_attr *parse_attr, 27*8ee72638SRoi Dayan u32 *action, struct netlink_ext_ack *extack); 28*8ee72638SRoi Dayan 29*8ee72638SRoi Dayan #endif /* __MLX5_EN_TC_ACT_VLAN_H__ */ 30