xref: /linux/net/sched/sch_mqprio_lib.h (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
11dfe086dSVladimir Oltean /* SPDX-License-Identifier: GPL-2.0 */
21dfe086dSVladimir Oltean #ifndef __SCH_MQPRIO_LIB_H
31dfe086dSVladimir Oltean #define __SCH_MQPRIO_LIB_H
41dfe086dSVladimir Oltean 
51dfe086dSVladimir Oltean #include <linux/types.h>
61dfe086dSVladimir Oltean 
71dfe086dSVladimir Oltean struct net_device;
81dfe086dSVladimir Oltean struct netlink_ext_ack;
91dfe086dSVladimir Oltean struct tc_mqprio_qopt;
101dfe086dSVladimir Oltean 
111dfe086dSVladimir Oltean int mqprio_validate_qopt(struct net_device *dev, struct tc_mqprio_qopt *qopt,
121dfe086dSVladimir Oltean 			 bool validate_queue_counts,
131dfe086dSVladimir Oltean 			 bool allow_overlapping_txqs,
141dfe086dSVladimir Oltean 			 struct netlink_ext_ack *extack);
159dd6ad67SVladimir Oltean void mqprio_qopt_reconstruct(struct net_device *dev,
169dd6ad67SVladimir Oltean 			     struct tc_mqprio_qopt *qopt);
17*f62af20bSVladimir Oltean void mqprio_fp_to_offload(u32 fp[TC_QOPT_MAX_QUEUE],
18*f62af20bSVladimir Oltean 			  struct tc_mqprio_qopt_offload *mqprio);
191dfe086dSVladimir Oltean 
201dfe086dSVladimir Oltean #endif
21