linux-stable/drivers/net/ethernet/microchip/lan966x/lan966x_mqprio.c
Horatiu Vultur 3c83431f07 net: lan966x: Add offload support for mqprio
Implement mqprio qdisc support using tc command.
The HW supports 8 priority queues from highest (7) to lowest (0).

Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2022-09-23 12:31:27 +01:00

28 lines
502 B
C

// SPDX-License-Identifier: GPL-2.0+
#include "lan966x_main.h"
int lan966x_mqprio_add(struct lan966x_port *port, u8 num_tc)
{
u8 i;
if (num_tc != NUM_PRIO_QUEUES) {
netdev_err(port->dev, "Only %d tarffic classes supported\n",
NUM_PRIO_QUEUES);
return -EINVAL;
}
netdev_set_num_tc(port->dev, num_tc);
for (i = 0; i < num_tc; ++i)
netdev_set_tc_queue(port->dev, i, 1, i);
return 0;
}
int lan966x_mqprio_del(struct lan966x_port *port)
{
netdev_reset_tc(port->dev);
return 0;
}