lkml.org 
[lkml]   [2022]   [Feb]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v18 2/4] dmaengine: tegra: Add tegra gpcdma driver
From
04.02.2022 15:15, Dmitry Osipenko пишет:
> 04.02.2022 09:47, Akhil R пишет:
>>> 03.02.2022 06:44, Akhil R пишет:
>>>>> But why do you need to pause at all here and can't use
>>>>> tegra_dma_stop_client() even if pause is supported?
>>>> The recommended method to terminate a transfer in
>>>> between is to pause the channel first and then disable it.
>>>> This is more graceful and stable for the hardware.
>>>> stop_client() is more abrupt, though it does the job.
>>>
>>> If there is no real practical difference, then I'd use the common method
>>> only. This will make code cleaner and simpler a tad.
>> This is the documented way of clean exit from a transfer, especially for
>> cyclic transfers where the DMA is configured in continuous mode.
>> I guess it might not be a good idea to deviate from that unless there is
>> something demanding it compulsorily.
>>
>> I agree that the code will be cleaner. I would try to see if I can find a cleaner
>> way to do this. Please do let me know if you have any suggestion.
>
> Will be great if you could find out and provide a detailed explanation
> about the exact differences of the methods from software perspective.
> Try to ask the hardware people.
>
> If you won't be able to find out, then use both methods. Then you could
> specify the "pause" callback within the tegra_dma_chip_data
> [tdma->chip_data->pause(tdma)], instead of using condition in the code.

s/pause/terminate/

\
 
 \ /
  Last update: 2022-02-04 13:28    [W:0.061 / U:1.452 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site