Thread (26 messages) flat view 26 messages, 6 authors, 2011-07-25
STALE5498d

[PATCH V4 03-1/13] DMA: PL330: Support DMA_SLAVE_CONFIG command

From: Russell King - ARM Linux <hidden>
Date: 2011-07-21 08:11:38
Also in: linux-samsung-soc

On Thu, Jul 21, 2011 at 12:47:49AM +0530, Jassi Brar wrote:
On Wed, Jul 20, 2011 at 4:16 PM, Boojin Kim [off-list ref] wrote:
quoted
+ ? ? ? ? ? ? ? if (slave_config->direction == DMA_TO_DEVICE) {
+ ? ? ? ? ? ? ? ? ? ? ? if (slave_config->dst_addr)
+ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? peri->fifo_addr = slave_config->dst_addr;
+ ? ? ? ? ? ? ? ? ? ? ? if (slave_config->dst_addr_width)
+ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? peri->burst_sz = __ffs(slave_config->dst_addr_width);
+ ? ? ? ? ? ? ? } else if (slave_config->direction == DMA_FROM_DEVICE) {
+ ? ? ? ? ? ? ? ? ? ? ? if (slave_config->src_addr)
+ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? peri->fifo_addr = slave_config->src_addr;
+ ? ? ? ? ? ? ? ? ? ? ? if (slave_config->src_addr_width)
+ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? peri->burst_sz = __ffs(slave_config->src_addr_width);
+ ? ? ? ? ? ? ? }
PL330 has fixed channels to peripherals.
So FIFO addresses(burst_sz too?) should already be set via platform data.
Client drivers shouldn't bother.
That's utter crap, and isn't what the DMA engine API is about.

The above looks correctly implemented.  Slave DMA engine users are
supposed to supply the device DMA register address via this
DMA_SLAVE_CONFIG call.  Doing this via platform data for the DMA
device is braindead.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help