Data Accelerator Offload
Loading...
Searching...
No Matches
dao_graph_feature_arc.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: Marvell-MIT
2 * Copyright (c) 2024 Marvell.
3 */
4#ifndef _DAO_GRAPH_FEATURE_ARC_H_
5#define _DAO_GRAPH_FEATURE_ARC_H_
6
7#include <assert.h>
8#include <errno.h>
9#include <signal.h>
10#include <stddef.h>
11#include <stdint.h>
12#include <stdio.h>
13#include <stdlib.h>
14#include <string.h>
15
16#include <rte_common.h>
17#include <rte_compat.h>
18#include <rte_debug.h>
19#include <rte_graph.h>
20#include <rte_graph_worker.h>
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
103#define DAO_GRAPH_FEATURE_ARC_INITIALIZER ((dao_graph_feature_arc_t)UINT64_MAX)
104
106#define DAO_GRAPH_FEATURE_INVALID_VALUE UINT8_MAX
107
109#define DAO_GRAPH_FEATURE_MAX_PER_ARC 64
110
112#define DAO_GRAPH_FEATURE_ARC_NAMELEN RTE_NODE_NAMESIZE
113
115#define dao_graph_feature_cast(x) ((dao_graph_feature_t)x)
116
118typedef uint64_t dao_graph_feature_arc_t;
119
121typedef uint8_t dao_graph_feature_t;
122
133int dao_graph_feature_arc_init(int max_feature_arcs);
134
153int dao_graph_feature_arc_create(const char *feature_arc_name, int max_features, int max_indexes,
154 struct rte_node_register *start_node,
156
170
192int dao_graph_feature_add(dao_graph_feature_arc_t _dfl, struct rte_node_register *feature_node,
193 const char *runs_after, const char *runs_before);
194
214int dao_graph_feature_enable(dao_graph_feature_arc_t _dfl, uint32_t index, const char *feature_name,
215 int64_t data);
216
237 const char *feature_name, int is_enable_disable);
238
257 const char *feature_name);
258
272int dao_graph_feature_destroy(dao_graph_feature_arc_t _dfl, const char *feature_name);
273
286
295
296#ifdef __cplusplus
297}
298#endif
299
300#endif
int dao_graph_feature_add(dao_graph_feature_arc_t _dfl, struct rte_node_register *feature_node, const char *runs_after, const char *runs_before)
int dao_graph_feature_enable(dao_graph_feature_arc_t _dfl, uint32_t index, const char *feature_name, int64_t data)
int dao_graph_feature_destroy(dao_graph_feature_arc_t _dfl, const char *feature_name)
int dao_graph_feature_arc_cleanup(void)
int dao_graph_feature_arc_lookup_by_name(const char *arc_name, dao_graph_feature_arc_t *_dfl)
int dao_graph_feature_disable(dao_graph_feature_arc_t _dfl, uint32_t index, const char *feature_name)
int dao_graph_feature_arc_destroy(dao_graph_feature_arc_t _dfl)
int dao_graph_feature_arc_create(const char *feature_arc_name, int max_features, int max_indexes, struct rte_node_register *start_node, dao_graph_feature_arc_t *_dfl)
uint8_t dao_graph_feature_t
int dao_graph_feature_validate(dao_graph_feature_arc_t _dfl, uint32_t index, const char *feature_name, int is_enable_disable)
int dao_graph_feature_arc_init(int max_feature_arcs)
uint64_t dao_graph_feature_arc_t