1/* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */
2/* Copyright (c) 2019-2020 Marvell International Ltd. All rights reserved. */
3
4#ifndef _PRESTERA_DEVLINK_H_
5#define _PRESTERA_DEVLINK_H_
6
7#include "prestera.h"
8
9struct prestera_switch *prestera_devlink_alloc(struct prestera_device *dev);
10void prestera_devlink_free(struct prestera_switch *sw);
11
12void prestera_devlink_register(struct prestera_switch *sw);
13void prestera_devlink_unregister(struct prestera_switch *sw);
14
15int prestera_devlink_port_register(struct prestera_port *port);
16void prestera_devlink_port_unregister(struct prestera_port *port);
17
18void prestera_devlink_trap_report(struct prestera_port *port,
19				  struct sk_buff *skb, u8 cpu_code);
20int prestera_devlink_traps_register(struct prestera_switch *sw);
21void prestera_devlink_traps_unregister(struct prestera_switch *sw);
22
23#endif /* _PRESTERA_DEVLINK_H_ */
24