CNDP  22.08.0
pktdev_rx_priv.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright (c) 2020 Marvell International Ltd.
3  */
4 #ifndef __INCLUDE_PKTDEV_RX_PRIV_H__
5 #define __INCLUDE_PKTDEV_RX_PRIV_H__
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11 #include <cne_common.h>
12 
13 struct pktdev_rx_node_elem;
14 struct pktdev_rx_node_ctx;
15 typedef struct pktdev_rx_node_elem pktdev_rx_node_elem_t;
16 typedef struct pktdev_rx_node_ctx pktdev_rx_node_ctx_t;
17 
23 struct pktdev_rx_node_ctx {
24  uint16_t port_id;
25  uint16_t cls_next;
26 };
27 
33 struct pktdev_rx_node_elem {
34  struct pktdev_rx_node_elem *next;
36  struct pktdev_rx_node_ctx ctx;
38  cne_node_t nid;
40 };
41 
42 enum pktdev_rx_next_nodes {
43  PKTDEV_RX_NEXT_IP4_LOOKUP,
44  PKTDEV_RX_NEXT_PKT_CLS,
45  PKTDEV_RX_NEXT_MAX,
46 };
47 
53 struct pktdev_rx_node_main {
54  pktdev_rx_node_elem_t *head;
56 };
57 
66 struct pktdev_rx_node_main *pktdev_rx_get_node_data_get(void);
67 
76 struct cne_node_register *pktdev_rx_node_get(void);
77 
78 #ifdef __cplusplus
79 }
80 #endif
81 
82 #endif /* __INCLUDE_PKTDEV_RX_PRIV_H__ */
uint32_t cne_node_t
Definition: cne_graph.h:40