Re: [PATCH] dma: tegra: implement flags parameters for cyclic transfer

From: Laxman Dewangan
Date: Thu Dec 20 2012 - 01:11:03 EST


On Wednesday 19 December 2012 10:32 PM, Stephen Warren wrote:
On 12/19/2012 06:40 AM, Laxman Dewangan wrote:
The flag parameter is added in the cyclic transfer request.
Use the flag option of:
- DMA_PREP_INTERRUPT for enabling interrupt.
- DMA_CTRL_ACK for deciding whether ack is requred or not for
descriptor.
Do the relevant drivers that use Tegra's DMA engine already set flags
correctly, so that this change won't cause any regressions?


Currently, the sound soc driver uses the cyclic mode of dma transfer and it has already enable the proper flags. This was done recently after adding flags in cyclic api.
Also, there was bug in our dma driver for not setting DMA_CTRL_ACK by default for cyclic case.
This will fix the issue.

Why would you not want to enable interrupts; how does a client know when
to refill the buffer?

This came recently from the cyclic api after adding flags that client can pass proper flag to enable inetrrupt or not.
Changes from Peter:
/*
commit ec8b5e48c03790a68cb875fe5064007a9cbdfdd0
Author: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
Date: Fri Sep 14 15:05:47 2012 +0300

dmaengine: Pass flags via device_prep_dma_cyclic() callback

Change the parameter list of device_prep_dma_cyclic() so the DMA drivers
can receive the flags coming from clients.
This feature can be used during audio operation to disable all audio
related interrupts when the DMA_PREP_INTERRUPT is cleared from the flags.
*/

--
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/