Subject: [PATCH v2 0/2] Add Qualcomm MSM ADM DMAEngine driver

From: [email-masked] (Ravi Kumar V)
Date: Fri, 20 Jan 2012 18:00:04 +0530

On 1/17/2012 7:15 PM, Vinod Koul wrote:
> On Fri, 2012-01-06 at 18:17 +0530, Ravi Kumar V wrote:
> <sorry for delayed review, was on vacation and now traveling>
>>
>> As our ADM Scatter-gather hardware needs
>> -32-bit command configuration parameter
>>   apart from
>> -32-bit source address
>> -32-bit destination address
>> -16-bit length
>>
>> So,we have added new parameter in struct scatterlist to support xfer
>> descriptor
>> specific private data, and for supporting ADM Box mode DMA we added
>> new
>> API and data structure.
> what do you mean by "ADM Box mode"?
>

ADM Box mode is a interleaved type of DMA where data from rows of equal 
length and equal distance(bytes) between each other are transferred to 
similar pattern of rows.
Each row length and distance between each row in destination pattern may 
not be equal to source pattern.
Distance between beginning of any two rows are always greater than row 
length.
Example:
If 4 rows of 16 bytes each are arranged such that distance between 
beginning of any two rows are 32 bytes.
Now they can be transferred using BOX mode to destination pattern 
arranged in 2 rows of 32 bytes each and distance between them can be any 
lets say 128 bytes.

Source pattern:
4 data rows starts address 0th byte.

0-----16-bytes-data-----15
16    16 bytes void     31
32---------data---------47
48         void         63
64---------data---------79
80         void         95
96---------data--------111

Transferred to destination
Destination pattern:
2 rows
0----------32-bytes-data----------31
32         96 bytes void         127
128-------------data-------------159

-- 
Sent by a consultant of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.