6 #ifndef RTE_DMADEV_CORE_H 7 #define RTE_DMADEV_CORE_H 21 typedef int (*rte_dma_copy_t)(
void *
dev_private, uint16_t vchan,
23 uint32_t length, uint64_t flags);
26 typedef int (*rte_dma_copy_sg_t)(
void *
dev_private, uint16_t vchan,
29 uint16_t nb_src, uint16_t nb_dst,
33 typedef int (*rte_dma_fill_t)(
void *
dev_private, uint16_t vchan,
35 uint32_t
length, uint64_t flags);
38 typedef int (*rte_dma_submit_t)(
void *
dev_private, uint16_t vchan);
41 typedef uint16_t (*rte_dma_completed_t)(
void *
dev_private,
42 uint16_t vchan,
const uint16_t nb_cpls,
43 uint16_t *last_idx,
bool *has_error);
46 typedef uint16_t (*rte_dma_completed_status_t)(
void *
dev_private,
47 uint16_t vchan,
const uint16_t nb_cpls,
51 typedef uint16_t (*rte_dma_burst_capacity_t)(
const void *
dev_private, uint16_t vchan);
64 struct rte_dma_fp_object {
70 rte_dma_copy_sg_t copy_sg;
72 rte_dma_submit_t submit;
73 rte_dma_completed_t completed;
74 rte_dma_completed_status_t completed_status;
75 rte_dma_burst_capacity_t burst_capacity;
78 extern struct rte_dma_fp_object *rte_dma_fp_objs;
__extension__ struct rte_eth_link __rte_aligned(8)