lkml.org 
[lkml]   [2015]   [Feb]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH 1/2] dma: at_hdmac: Fix calculation of the residual bytes
From
Hello Ludovic,

>>
>> transfer 1: residue = 975584
>> transfer 2: residue = 1048380
>>
>
> You're right about these points. Good job. I think it should be sent to
> stable if it can be applied properly.
>
> For multilines comments, please follow the coding rule
> /*
> * my
> * comments
> */
>
thanks for the hint. I will fix this in the next version of the patch.

>> + /* cookie matches to the currently running transfer */
>> + ret = desc_first->total_len;
>> +
>> + if (desc_first->lli.dscr) {
>> + /* hardware linked list transfer */
>> +
>> + /* Calculate the residue by removing the length of the child
>> + * descriptors already transferred from the total length.
>> + * To get the current child descriptor we can use the value of
>> + * the channel's DSCR register and compare it against the value
>> + * of the hardware linked list structure of each child
>> + * descriptor. */
>> +
>> + dscr = channel_readl(atchan, DSCR);
>> +
>> + /* the first descriptor is currently in work */
>> + if (desc_first->lli.dscr == dscr)
>> + return ret;
>>
>
> Why returning total_len in this case? I think you can return a more accurate
> value as you do for the last descriptor.
>
Good point. I will add a calculation for the first descriptor.

Regards

Torsten


\
 
 \ /
  Last update: 2015-02-19 09:01    [W:0.064 / U:3.776 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site