#include "dr_types.h"
#include "mlx5_ifc_dr_ste_v1.h"
enum dr_ptrn_modify_hdr_action_id { … };
struct mlx5dr_ptrn_mgr { … };
static bool dr_ptrn_compare_modify_hdr(size_t cur_num_of_actions,
__be64 cur_hw_actions[],
size_t num_of_actions,
__be64 hw_actions[])
{ … }
static struct mlx5dr_ptrn_obj *
dr_ptrn_find_cached_pattern(struct mlx5dr_ptrn_mgr *mgr,
size_t num_of_actions,
__be64 hw_actions[])
{ … }
static struct mlx5dr_ptrn_obj *
dr_ptrn_alloc_pattern(struct mlx5dr_ptrn_mgr *mgr,
u16 num_of_actions, u8 *data)
{ … }
static void
dr_ptrn_free_pattern(struct mlx5dr_ptrn_obj *pattern)
{ … }
struct mlx5dr_ptrn_obj *
mlx5dr_ptrn_cache_get_pattern(struct mlx5dr_ptrn_mgr *mgr,
u16 num_of_actions,
u8 *data)
{ … }
void
mlx5dr_ptrn_cache_put_pattern(struct mlx5dr_ptrn_mgr *mgr,
struct mlx5dr_ptrn_obj *pattern)
{ … }
struct mlx5dr_ptrn_mgr *mlx5dr_ptrn_mgr_create(struct mlx5dr_domain *dmn)
{ … }
void mlx5dr_ptrn_mgr_destroy(struct mlx5dr_ptrn_mgr *mgr)
{ … }