5 #ifndef RTE_DMADEV_PMD_H
6 #define RTE_DMADEV_PMD_H
26 typedef int (*rte_dma_info_get_t)(
const struct rte_dma_dev *dev,
31 typedef int (*rte_dma_configure_t)(
struct rte_dma_dev *dev,
36 typedef int (*rte_dma_start_t)(
struct rte_dma_dev *dev);
39 typedef int (*rte_dma_stop_t)(
struct rte_dma_dev *dev);
42 typedef int (*rte_dma_close_t)(
struct rte_dma_dev *dev);
45 typedef int (*rte_dma_vchan_setup_t)(
struct rte_dma_dev *dev, uint16_t vchan,
50 typedef int (*rte_dma_stats_get_t)(
const struct rte_dma_dev *dev,
55 typedef int (*rte_dma_stats_reset_t)(
struct rte_dma_dev *dev, uint16_t vchan);
58 typedef int (*rte_dma_vchan_status_t)(
const struct rte_dma_dev *dev, uint16_t vchan,
62 typedef int (*rte_dma_dump_t)(
const struct rte_dma_dev *dev, FILE *f);
70 rte_dma_info_get_t dev_info_get;
71 rte_dma_configure_t dev_configure;
72 rte_dma_start_t dev_start;
73 rte_dma_stop_t dev_stop;
74 rte_dma_close_t dev_close;
76 rte_dma_vchan_setup_t vchan_setup;
78 rte_dma_stats_get_t stats_get;
79 rte_dma_stats_reset_t stats_reset;
81 rte_dma_vchan_status_t vchan_status;
82 rte_dma_dump_t dev_dump;
94 struct rte_dma_dev_data {
95 char dev_name[RTE_DEV_NAME_MAX_LEN];
101 uint8_t dev_started : 1;
102 uint64_t reserved[2];
125 struct rte_dma_dev_data *data;
127 struct rte_dma_fp_object *fp_obj;
131 uint64_t reserved[2];
151 struct rte_dma_dev *rte_dma_pmd_allocate(
const char *name,
int numa_node,
152 size_t private_data_size);
165 int rte_dma_pmd_release(
const char *name);
#define __rte_cache_aligned