13c83431fSHoratiu Vultur // SPDX-License-Identifier: GPL-2.0+ 23c83431fSHoratiu Vultur 33c83431fSHoratiu Vultur #include "lan966x_main.h" 43c83431fSHoratiu Vultur lan966x_mqprio_add(struct lan966x_port * port,u8 num_tc)53c83431fSHoratiu Vulturint lan966x_mqprio_add(struct lan966x_port *port, u8 num_tc) 63c83431fSHoratiu Vultur { 73c83431fSHoratiu Vultur u8 i; 83c83431fSHoratiu Vultur 93c83431fSHoratiu Vultur if (num_tc != NUM_PRIO_QUEUES) { 10*db7fccc1SColin Ian King netdev_err(port->dev, "Only %d traffic classes supported\n", 113c83431fSHoratiu Vultur NUM_PRIO_QUEUES); 123c83431fSHoratiu Vultur return -EINVAL; 133c83431fSHoratiu Vultur } 143c83431fSHoratiu Vultur 153c83431fSHoratiu Vultur netdev_set_num_tc(port->dev, num_tc); 163c83431fSHoratiu Vultur 173c83431fSHoratiu Vultur for (i = 0; i < num_tc; ++i) 183c83431fSHoratiu Vultur netdev_set_tc_queue(port->dev, i, 1, i); 193c83431fSHoratiu Vultur 203c83431fSHoratiu Vultur return 0; 213c83431fSHoratiu Vultur } 223c83431fSHoratiu Vultur lan966x_mqprio_del(struct lan966x_port * port)233c83431fSHoratiu Vulturint lan966x_mqprio_del(struct lan966x_port *port) 243c83431fSHoratiu Vultur { 253c83431fSHoratiu Vultur netdev_reset_tc(port->dev); 263c83431fSHoratiu Vultur 273c83431fSHoratiu Vultur return 0; 283c83431fSHoratiu Vultur } 29