Data Accelerator Offload
Loading...
Searching...
No Matches
dao_eth_trs.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: Marvell-Proprietary
2 * Copyright (c) 2025 Marvell
3 */
4#ifndef __DAO_ETH_TRANSPORT_H__
5#define __DAO_ETH_TRANSPORT_H__
6
7#include <rte_common.h>
8
40#include <stdint.h>
41
42#include <rte_ethdev.h>
43#include <rte_mempool.h>
44
67
69struct __rte_packed dao_eth_trs_hdr {
70 uint16_t op_type;
72 uint16_t op_len;
73};
74
76struct __rte_packed dao_eth_trs_pkt {
78 struct dao_eth_trs_hdr hdr;
80 uint8_t data[];
81};
82
85 uint16_t nb_queues;
86 uint8_t promiscuous;
87};
88
91 uint16_t queue_size;
92 struct rte_mempool *rx_mp;
93};
94
97 uint8_t nb_devs;
98 uint16_t nb_queues;
99 uint16_t min_queue_size;
100 uint16_t max_queue_size;
101 uint32_t min_buf_len;
102 uint32_t max_pkt_len;
103};
104
105#define dao_eth_trs_tx rte_eth_tx_burst
106#define dao_eth_trs_rx rte_eth_rx_burst
120
131
144
160int dao_eth_trs_dev_alloc(uint8_t dev_id, struct dao_eth_trs_dev_config *config);
161
178int dao_eth_trs_dev_queue_configure(uint8_t dev_id, uint16_t queue_id,
179 struct dao_eth_trs_queue_config *conf);
180
200int dao_eth_trs_dev_queue_map(uint8_t dev_id, uint16_t dev_queue_id, uint16_t *port_id,
201 uint16_t *queue_id);
202
216int dao_eth_trs_dev_start(uint8_t dev_id);
217
229int dao_eth_trs_dev_stop(uint8_t dev_id);
230
244int dao_eth_trs_dev_free(uint8_t dev_id);
245#endif /* __DAO_ETH_TRANSPORT_H__ */
int dao_eth_trs_dev_stop(uint8_t dev_id)
int dao_eth_trs_dev_start(uint8_t dev_id)
int dao_eth_trs_fini(void)
int dao_eth_trs_dev_queue_map(uint8_t dev_id, uint16_t dev_queue_id, uint16_t *port_id, uint16_t *queue_id)
int dao_eth_trs_dev_queue_configure(uint8_t dev_id, uint16_t queue_id, struct dao_eth_trs_queue_config *conf)
int dao_eth_trs_init(void)
int dao_eth_trs_dev_alloc(uint8_t dev_id, struct dao_eth_trs_dev_config *config)
int dao_eth_trs_dev_free(uint8_t dev_id)
dao_eth_trs_op_type
Definition dao_eth_trs.h:49
@ DAO_ETH_TRS_OP_TYPE_CRYPTO_START
Definition dao_eth_trs.h:53
@ DAO_ETH_TRS_OP_TYPE_CRYPTO_SYM
Definition dao_eth_trs.h:57
@ DAO_ETH_TRS_OP_TYPE_CRYPTO_ASYM
Definition dao_eth_trs.h:59
@ DAO_ETH_TRS_OP_TYPE_SYM_SESSION_CREATE
Definition dao_eth_trs.h:61
@ DAO_ETH_TRS_OP_TYPE_SYM_SESSION_DESTROY
Definition dao_eth_trs.h:63
@ DAO_ETH_TRS_OP_TYPE_REFLECT
Definition dao_eth_trs.h:51
@ DAO_ETH_TRS_OP_TYPE_CRYPTO_END
Definition dao_eth_trs.h:65
@ DAO_ETH_TRS_OP_TYPE_CRYPTO_MISC
Definition dao_eth_trs.h:55
uint16_t op_len
Definition dao_eth_trs.h:72
uint16_t op_type
Definition dao_eth_trs.h:70
uint16_t min_queue_size
Definition dao_eth_trs.h:99
uint16_t nb_queues
Definition dao_eth_trs.h:98
uint32_t max_pkt_len
uint32_t min_buf_len
uint16_t max_queue_size
struct rte_mempool * rx_mp
Definition dao_eth_trs.h:92