Subject: [PATCH v4 3/3] dma: Add Freescale eDMA engine driver support

From: [email-masked] (Vinod Koul)
Date: Tue, 3 Sep 2013 17:01:51 +0530

On Tue, Sep 03, 2013 at 05:43:21AM +0000, Lu Jingchang-B35083 wrote:
>   Do you mean the DMA_SLAVE_CONFIG device_control? Yeah, the slave driver could pass
> the slave_id. But the DMA_SLAVE_CONFIG may be called more than once, and the eDMA
> driver just needs to set the slave id once for any given channel, after that the 
> transfer is transparent to the device. 
It depends, for a channel requested, if you are only tranferring to a particular
slave device then it can be confugured once.
so
1. allocate channel
2. dmaengine_slave_config()

then you cnan do preare etc multiple times based on need.

~Vinod
>   On the other hand, the DMAMUX's setting procedure requires first disable the dmamux
> before setting, then if it is set in DMA_SLAVE_CONFIG, the repeated setting may be
> complex and unnecessary. The channel is occupied exclusively by the peripheral.
>   So, according the HW feature, I think the eDMA needs only set the slave id once,
> and since the of_dma helper has pass the slave id in on xlate, we can get and set
> the slave id here. How do you think about this?

--