Re: [PATCH v2 03/15] dmaengine: Add no_wakeup parameter todmaengine_prep_dma_cyclic()

From: Russell King - ARM Linux
Date: Fri Sep 14 2012 - 06:02:12 EST


On Fri, Sep 14, 2012 at 12:28:28PM +0300, Peter Ujfalusi wrote:
> I'm not sure about which flags should ASoC set for the two case we are going
> to have. I think it should be something like this:
>
> unsigned long flags = DMA_CTRL_ACK;
>
> if (!substream->runtime->no_period_wakeup)
> flags |= DMA_PREP_INTERRUPT;

That looks about right. I would encourage DMA_CTRL_ACK to always be set
for slave stuff, because it will (according to my understanding of it)
make the behaviour no different from the async_tx stuff... which is
important when support for that stuff gets added.

We could, of course, set DMA_CTRL_ACK in the slave APIs beneath the
user, but the user has access to tx->flags between the prepare and
submit calls... And doing it in the submit callback will force DMA
engine drivers to have two separate submission paths (as tx'es can't
be acked at submission time.)
--
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/