root/drivers/net/ethernet/marvell/prestera/prestera_flower.h
/* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */
/* Copyright (c) 2020-2021 Marvell International Ltd. All rights reserved. */

#ifndef _PRESTERA_FLOWER_H_
#define _PRESTERA_FLOWER_H_

#include <net/pkt_cls.h>

struct prestera_flow_block;

int prestera_flower_replace(struct prestera_flow_block *block,
                            struct flow_cls_offload *f);
void prestera_flower_destroy(struct prestera_flow_block *block,
                             struct flow_cls_offload *f);
int prestera_flower_stats(struct prestera_flow_block *block,
                          struct flow_cls_offload *f);
int prestera_flower_tmplt_create(struct prestera_flow_block *block,
                                 struct flow_cls_offload *f);
void prestera_flower_tmplt_destroy(struct prestera_flow_block *block,
                                   struct flow_cls_offload *f);
void prestera_flower_template_cleanup(struct prestera_flow_block *block);
int prestera_flower_prio_get(struct prestera_flow_block *block, u32 chain_index,
                             u32 *prio_min, u32 *prio_max);

#endif /* _PRESTERA_FLOWER_H_ */