Basically, we are trying to copy data from source memory (buffer_v_addr2 + offset) into destination memory (buffer_v_addr + offset). The two buffers (buffer_v_addr and buffer_v_addr2) were both allocated using dma_alloc_coherent() in the init function of the driver as below,
As you can see in the code above, we added calls to debug_dma_mapping_error() to try checking for map error, however this still doesn't resolve the issue.
Would you have any suggestions on what we might be missing, or how to go about resolving the issue? Is the dma_async_memcpy_buf_to_buf() the correct API call to use for such Memory to Memory DMA transfer, or should we try another method?