GNU Linux-libre 6.8.9-gnu
[releases.git] / drivers / net / ethernet / marvell / prestera / prestera_flower.h
1 /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */
2 /* Copyright (c) 2020-2021 Marvell International Ltd. All rights reserved. */
3
4 #ifndef _PRESTERA_FLOWER_H_
5 #define _PRESTERA_FLOWER_H_
6
7 #include <net/pkt_cls.h>
8
9 struct prestera_flow_block;
10
11 int prestera_flower_replace(struct prestera_flow_block *block,
12                             struct flow_cls_offload *f);
13 void prestera_flower_destroy(struct prestera_flow_block *block,
14                              struct flow_cls_offload *f);
15 int prestera_flower_stats(struct prestera_flow_block *block,
16                           struct flow_cls_offload *f);
17 int prestera_flower_tmplt_create(struct prestera_flow_block *block,
18                                  struct flow_cls_offload *f);
19 void prestera_flower_tmplt_destroy(struct prestera_flow_block *block,
20                                    struct flow_cls_offload *f);
21 void prestera_flower_template_cleanup(struct prestera_flow_block *block);
22 int prestera_flower_prio_get(struct prestera_flow_block *block, u32 chain_index,
23                              u32 *prio_min, u32 *prio_max);
24
25 #endif /* _PRESTERA_FLOWER_H_ */