xref: /aosp_15_r20/external/libnl/include/netlink/route/qdisc/mqprio.h (revision 4dc78e53d49367fa8e61b07018507c90983a077d)
1*4dc78e53SAndroid Build Coastguard Worker /* SPDX-License-Identifier: LGPL-2.1-only */
2*4dc78e53SAndroid Build Coastguard Worker /*
3*4dc78e53SAndroid Build Coastguard Worker  * Copyright (c) 2018 Volodymyr Bendiuga <[email protected]>
4*4dc78e53SAndroid Build Coastguard Worker  */
5*4dc78e53SAndroid Build Coastguard Worker 
6*4dc78e53SAndroid Build Coastguard Worker #ifndef NETLINK_MQPRIO_H_
7*4dc78e53SAndroid Build Coastguard Worker #define NETLINK_MQPRIO_H_
8*4dc78e53SAndroid Build Coastguard Worker 
9*4dc78e53SAndroid Build Coastguard Worker #include <netlink/netlink.h>
10*4dc78e53SAndroid Build Coastguard Worker #include <netlink/route/qdisc.h>
11*4dc78e53SAndroid Build Coastguard Worker 
12*4dc78e53SAndroid Build Coastguard Worker #ifdef __cplusplus
13*4dc78e53SAndroid Build Coastguard Worker extern "C" {
14*4dc78e53SAndroid Build Coastguard Worker #endif
15*4dc78e53SAndroid Build Coastguard Worker 
16*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_set_num_tc(struct rtnl_qdisc *qdisc, int num_tc);
17*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_get_num_tc(struct rtnl_qdisc *qdisc);
18*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_set_priomap(struct rtnl_qdisc *qdisc, uint8_t priomap[],
19*4dc78e53SAndroid Build Coastguard Worker                                          int len);
20*4dc78e53SAndroid Build Coastguard Worker extern uint8_t *rtnl_qdisc_mqprio_get_priomap(struct rtnl_qdisc *qdisc);
21*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_hw_offload(struct rtnl_qdisc *qdisc, int offload);
22*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_get_hw_offload(struct rtnl_qdisc *qdisc);
23*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_set_queue(struct rtnl_qdisc *qdisc, uint16_t count[],
24*4dc78e53SAndroid Build Coastguard Worker                                        uint16_t offset[], int len);
25*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_get_queue(struct rtnl_qdisc *qdisc, uint16_t *count,
26*4dc78e53SAndroid Build Coastguard Worker                                        uint16_t *offset);
27*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_set_mode(struct rtnl_qdisc *qdisc, uint16_t mode);
28*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_get_mode(struct rtnl_qdisc *qdisc);
29*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_set_shaper(struct rtnl_qdisc *qdisc, uint16_t shaper);
30*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_get_shaper(struct rtnl_qdisc *qdisc);
31*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_set_min_rate(struct rtnl_qdisc *qdisc, uint64_t min[],
32*4dc78e53SAndroid Build Coastguard Worker                                           int len);
33*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_get_min_rate(struct rtnl_qdisc *qdisc, uint64_t *min);
34*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_set_max_rate(struct rtnl_qdisc *qdisc, uint64_t max[],
35*4dc78e53SAndroid Build Coastguard Worker                                           int len);
36*4dc78e53SAndroid Build Coastguard Worker extern int rtnl_qdisc_mqprio_get_max_rate(struct rtnl_qdisc *qdisc, uint64_t *max);
37*4dc78e53SAndroid Build Coastguard Worker 
38*4dc78e53SAndroid Build Coastguard Worker #ifdef __cplusplus
39*4dc78e53SAndroid Build Coastguard Worker }
40*4dc78e53SAndroid Build Coastguard Worker #endif
41*4dc78e53SAndroid Build Coastguard Worker 
42*4dc78e53SAndroid Build Coastguard Worker #endif /* NETLINK_MQPRIO_H_ */
43