Re: [dpdk-dev] dmadev discussion summary
From: fengchengwen <hidden>
Date: 2021-07-02 14:00:00
On 2021/7/2 15:07, Liang Ma wrote:
quoted
8) One example: vq_id = rte_dmadev_queue_setup(dev, config.{HW-queue-index=x, opaque}); if (vq_id < 0) { // create virt-queue failed return; } // submit memcpy task cookit = rte_dmadev_memcpy(dev, vq_id, src, dst, len, flags); if (cookie < 0) { // submit failed return; }IMO rte_dmadev_memcpy should return ops number successfully submitted that's easier to do re-submit if previous session is not fully submitted.
emm, I didn't get your point. Welcome review the new patch, tks
quoted
// get complete task ret = rte_dmadev_completed(dev, vq_id, &cookie, 1, has_error); if (!has_error && ret == 1) { // the memcpy successful complete } 9) As octeontx2_dma support sg-list which has many valid buffers in dpi_dma_buf_ptr_s, it could call the rte_dmadev_memcpy_sg API. 10) As ioat, it could delcare support one HW-queue at dev_configure stage, and only support create one virt-queue. 11) As dpaa2_qdma, I think it could migrate to new framework, but still wait for dpaa2_qdma guys feedback. 12) About the prototype src/dst parameters of rte_dmadev_memcpy API, we have two candidates which are iova and void *, how about introduce dma_addr_t type which could be va or iova ?.