Re: [PATCH] dma: add new DMA control commands

From: Huang Shijie
Date: Thu Oct 18 2012 - 05:07:38 EST


ä 2012å10æ18æ 16:52, Russell King - ARM Linux åé:
On Thu, Oct 18, 2012 at 02:45:41PM +0800, Huang Shijie wrote:
ä 2012å10æ18æ 14:18, Vinod Koul åé:
Why cant you do start (prepare clock etc) when you submit the descriptor
to dmaengine. Can be done in tx_submit callback.
Similarly remove the clock when dma transaction gets completed.
I ever thought this method too.

But it will become low efficient in the following case:

Assuming the gpmi-nand driver has to read out 1024 pages in one
_SINGLE_ read operation.
The gpmi-nand will submit the descriptor to dmaengine per page. So with
your method,
the system will repeat the enable/disable dma clock 1024 time. At every
enable/disable dma clock,
the system has to enable the clock chain and it's parents ...
And what if you stop using clk_prepare_enable(), and prepare the clock
when the channel is requested and only use clk_enable() in the tx_submit
yes. it's a little better.
There is nearly no difference between the clk_prepare_enable() and clk_enable() in actually.
the clk_gate2_ops does not have any @->prepare.

thanks
Huang Shijie

method?



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/