1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (c) 2024 Pengutronix, Oleksij Rempel <kernel@pengutronix.de> */
3 
4 #ifndef __KSZ_DCB_H
5 #define __KSZ_DCB_H
6 
7 #include <net/dsa.h>
8 
9 #include "ksz_common.h"
10 
11 int ksz_port_get_default_prio(struct dsa_switch *ds, int port);
12 int ksz_port_set_default_prio(struct dsa_switch *ds, int port, u8 prio);
13 int ksz_port_get_dscp_prio(struct dsa_switch *ds, int port, u8 dscp);
14 int ksz_port_add_dscp_prio(struct dsa_switch *ds, int port, u8 dscp, u8 prio);
15 int ksz_port_del_dscp_prio(struct dsa_switch *ds, int port, u8 dscp, u8 prio);
16 int ksz_port_set_apptrust(struct dsa_switch *ds, int port,
17 			  const unsigned char *sel,
18 			  int nsel);
19 int ksz_port_get_apptrust(struct dsa_switch *ds, int port, u8 *sel, int *nsel);
20 int ksz_dcb_init_port(struct ksz_device *dev, int port);
21 int ksz_dcb_init(struct ksz_device *dev);
22 
23 #endif /* __KSZ_DCB_H */
24