net/mlx5: add VLAN push/pop DR commands to glue
[dpdk.git] / drivers / net / tap / tap_tcmsgs.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright 2017 6WIND S.A.
3  * Copyright 2017 Mellanox Technologies, Ltd
4  */
5
6 #ifndef _TAP_TCMSGS_H_
7 #define _TAP_TCMSGS_H_
8
9 #include <tap_autoconf.h>
10 #include <linux/if_ether.h>
11 #include <linux/rtnetlink.h>
12 #include <linux/pkt_sched.h>
13 #include <linux/pkt_cls.h>
14 #include <linux/tc_act/tc_mirred.h>
15 #include <linux/tc_act/tc_gact.h>
16 #include <linux/tc_act/tc_skbedit.h>
17 #ifdef HAVE_TC_ACT_BPF
18 #include <linux/tc_act/tc_bpf.h>
19 #endif
20 #include <inttypes.h>
21
22 #include <rte_ether.h>
23 #include <tap_netlink.h>
24
25 #define MULTIQ_MAJOR_HANDLE (1 << 16)
26
27 void tc_init_msg(struct nlmsg *msg, uint16_t ifindex, uint16_t type,
28                  uint16_t flags);
29 int qdisc_list(int nlsk_fd, uint16_t ifindex);
30 int qdisc_flush(int nlsk_fd, uint16_t ifindex);
31 int qdisc_create_ingress(int nlsk_fd, uint16_t ifindex);
32 int qdisc_create_multiq(int nlsk_fd, uint16_t ifindex);
33 int qdisc_add_ingress(int nlsk_fd, uint16_t ifindex);
34 int qdisc_add_multiq(int nlsk_fd, uint16_t ifindex);
35 int filter_list_ingress(int nlsk_fd, uint16_t ifindex);
36
37 #endif /* _TAP_TCMSGS_H_ */