summaryrefslogtreecommitdiff
path: root/drivers/thunderbolt
diff options
context:
space:
mode:
authorPeter Ujfalusi <peter.ujfalusi@ti.com>2019-07-16 11:26:54 +0300
committerVinod Koul <vkoul@kernel.org>2019-07-29 09:41:38 +0300
commit097ffdc75259139ba157b7f924cfeb0d6b00559e (patch)
tree92637e9bf9919be8cf75b63a6d153e5b0c917810 /drivers/thunderbolt
parente96b1f64ee2885acb8fb26325eb9743ad6c64696 (diff)
downloadlinux-097ffdc75259139ba157b7f924cfeb0d6b00559e.tar.xz
dmaengine: ti: edma: Correct the residue calculation (fix for memcpy)
For memcpy we never stored the start address of the transfer for the pset which rendered the memcpy residue calculation completely broken. In the edma_residue() function we also need to to some correction for the calculations: Instead waiting for all EDMA channels to be idle (in a busy system it can take few iteration to hit a point when all queues are idle) wait for the event pending on the given channel (SH_ER for hw synchronized channels, SH_ESR for manually triggered channels). If the position returned by EMDA is 0 it implies that the last paRAM set has been consumed and we are at the closing dummy set, thus we can conclude that the transfer is completed and we can return 0 as residue. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> [vkoul: fixed typo in commit log] Link: https://lore.kernel.org/r/20190716082655.1620-3-peter.ujfalusi@ti.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/thunderbolt')
0 files changed, 0 insertions, 0 deletions