51 struct doca_dma_task_memcpy;
184 uint32_t *max_buf_list_len);
225 uint32_t num_memcpy_tasks);
248 const struct doca_buf *
src,
249 struct doca_buf *dst,
251 struct doca_dma_task_memcpy **task);
static void task_error_cb(struct doca_task *se_task, union doca_data task_user_data, union doca_data ctx_user_data)
static void task_completion_cb(struct doca_task *se_task, union doca_data task_user_data, union doca_data ctx_user_data)
static uint64_t *restrict src
#define DOCA_EXPERIMENTAL
To set a Symbol (or specifically a function) as experimental.
#define DOCA_STABLE
To set a Symbol (or specifically a function) as stable API, i.e. it won't be changed.
DOCA_EXPERIMENTAL doca_error_t doca_dma_get_gpu_handle(struct doca_dma *dma, struct doca_gpu_dma **gpu_dma)
Retrieve the handle in the GPU memory space of a doca_dma.
DOCA_STABLE const struct doca_buf * doca_dma_task_memcpy_get_src(const struct doca_dma_task_memcpy *task)
This method gets source buffer from memcpy task.
DOCA_STABLE struct doca_task * doca_dma_task_memcpy_as_task(struct doca_dma_task_memcpy *task)
This method converts a memcpy task to doca_task.
DOCA_STABLE void doca_dma_task_memcpy_set_dst(struct doca_dma_task_memcpy *task, struct doca_buf *dst)
This method sets destination buffer to memcpy task.
DOCA_STABLE doca_error_t doca_dma_task_memcpy_alloc_init(struct doca_dma *dma, const struct doca_buf *src, struct doca_buf *dst, union doca_data user_data, struct doca_dma_task_memcpy **task)
This method allocates and initializes a DMA memcpy task.
DOCA_STABLE doca_error_t doca_dma_cap_task_memcpy_get_max_buf_list_len(const struct doca_devinfo *devinfo, uint32_t *max_buf_list_len)
DOCA_STABLE struct doca_ctx * doca_dma_as_ctx(struct doca_dma *dma)
DOCA_STABLE void doca_dma_task_memcpy_set_src(struct doca_dma_task_memcpy *task, const struct doca_buf *src)
This method sets source buffer to memcpy task.
DOCA_STABLE struct doca_buf * doca_dma_task_memcpy_get_dst(const struct doca_dma_task_memcpy *task)
This method gets destination buffer from memcpy task.
DOCA_STABLE doca_error_t doca_dma_cap_get_max_num_tasks(struct doca_dma *dma, uint32_t *max_num_tasks)
DOCA_STABLE doca_error_t doca_dma_task_memcpy_set_conf(struct doca_dma *dma, doca_dma_task_memcpy_completion_cb_t task_completion_cb, doca_dma_task_memcpy_completion_cb_t task_error_cb, uint32_t num_memcpy_tasks)
This method sets the DMA memcpy tasks configuration.
void(* doca_dma_task_memcpy_completion_cb_t)(struct doca_dma_task_memcpy *task, union doca_data task_user_data, union doca_data ctx_user_data)
Function to execute on DMA memcpy task completion.
DOCA_STABLE doca_error_t doca_dma_cap_task_memcpy_is_supported(const struct doca_devinfo *devinfo)
DOCA_STABLE doca_error_t doca_dma_cap_task_memcpy_get_max_buf_size(const struct doca_devinfo *devinfo, uint64_t *buf_size)
DOCA_STABLE doca_error_t doca_dma_create(struct doca_dev *dev, struct doca_dma **dma)
DOCA_STABLE doca_error_t doca_dma_destroy(struct doca_dma *dma)
enum doca_error doca_error_t
DOCA API return codes.
Convenience type for representing opaque data.