AnsweredAssumed Answered

imx6sx sdma m2m test issue

Question asked by zengxing yuan on Dec 13, 2016
Latest reply on Dec 22, 2016 by zengxing yuan

Frankly speaking, we failed to move data between memory using sdma, our kernel branch is 'imx_4.1.15_2.0.0_ga', the steps of our dma test is below, 

 

1) dma_request_channel() to get the available sdma channel

2) dma alloc the source buffer and dest buffer

3) dmaengine_slave_config() to config the dma direction to be DMA_MEM_TO_MEM

4) dma_map_sg() to map the source and desc buffer into scatterlist

5) device_prep_dma_sg() to process the scatterlist

6) dmaengine_submit() and wait_for_completion()

 

We found that the sdma will not work once we pend the request to such dma channel, it is blocked in waiting for completion, such a weird thing! By the way, imx's uart can employ the sdma in DMA_MEM_TO_DEV way that the sdma will be gererated.

 

Is there anybody who tested DMA_MEM_TO_MEM over imx6sx board of the kernel 'imx_4.1.15_2.0.0_ga'?

 

 

Thank you

Outcomes