All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nicolas Ferre <nicolas.ferre@atmel.com>
To: Peter Ujfalusi <peter.ujfalusi@ti.com>,
	Vinod Koul <vinod.koul@intel.com>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>,
	Liam Girdwood <lrg@ti.com>, Tony Lindgren <tony@atomide.com>,
	Russell King <rmk+kernel@arm.linux.org.uk>,
	Dan Williams <djbw@fb.com>,
	Jarkko Nikula <jarkko.nikula@bitmer.com>,
	alsa-devel@alsa-project.org, linux-omap@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org,
	Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>,
	Ricardo Neri <ricardo.neri@ti.com>,
	Lars-Peter Clausen <lars@metafoo.de>,
	Barry Song <baohua.song@csr.com>,
	Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>,
	Russell King - ARM Linux <linux@arm.linux.org.uk>,
	Vista Silicon <javier.martin@vista-silicon.com>,
	Zhangfei Gao <zhangfei.gao@marvell.com>,
	Shawn Guo <shawn.guo@linaro.org>,
	Laxman Dewangan <ldewangan@nvidia.com>
Subject: Re: [PATCH v3 04/15] dmaengine: Pass flags via device_prep_dma_cyclic() callback
Date: Mon, 17 Sep 2012 12:06:06 +0200	[thread overview]
Message-ID: <5056F60E.1080305@atmel.com> (raw)
In-Reply-To: <1347624358-25582-5-git-send-email-peter.ujfalusi@ti.com>

On 09/14/2012 02:05 PM, Peter Ujfalusi :
> 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.
> 
> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
> CC: Nicolas Ferre <nicolas.ferre@atmel.com>
> CC: Barry Song <baohua.song@csr.com>
> CC: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
> CC: Russell King - ARM Linux <linux@arm.linux.org.uk>
> CC: Vista Silicon <javier.martin@vista-silicon.com>
> CC: Zhangfei Gao <zhangfei.gao@marvell.com>
> CC: Shawn Guo <shawn.guo@linaro.org>
> CC: Laxman Dewangan <ldewangan@nvidia.com>
> ---
>  drivers/dma/at_hdmac.c        | 3 ++-

For Atmel's driver:

Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

>  drivers/dma/ep93xx_dma.c      | 4 +++-
>  drivers/dma/imx-dma.c         | 2 +-
>  drivers/dma/imx-sdma.c        | 2 +-
>  drivers/dma/mmp_tdma.c        | 2 +-
>  drivers/dma/mxs-dma.c         | 2 +-
>  drivers/dma/omap-dma.c        | 3 ++-
>  drivers/dma/pl330.c           | 2 +-
>  drivers/dma/sa11x0-dma.c      | 2 +-
>  drivers/dma/sirf-dma.c        | 2 +-
>  drivers/dma/ste_dma40.c       | 3 ++-
>  drivers/dma/tegra20-apb-dma.c | 2 +-
>  include/linux/dmaengine.h     | 4 ++--
>  13 files changed, 19 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/dma/at_hdmac.c b/drivers/dma/at_hdmac.c
> index 3934fcc..7e5f6b6 100644
> --- a/drivers/dma/at_hdmac.c
> +++ b/drivers/dma/at_hdmac.c
> @@ -841,12 +841,13 @@ atc_dma_cyclic_fill_desc(struct dma_chan *chan, struct at_desc *desc,
>   * @buf_len: total number of bytes for the entire buffer
>   * @period_len: number of bytes for each period
>   * @direction: transfer direction, to or from device
> + * @flags: tx descriptor status flags
>   * @context: transfer context (ignored)
>   */
>  static struct dma_async_tx_descriptor *
>  atc_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct at_dma_chan	*atchan = to_at_dma_chan(chan);
>  	struct at_dma_slave	*atslave = chan->private;
> diff --git a/drivers/dma/ep93xx_dma.c b/drivers/dma/ep93xx_dma.c
> index c64917e..493735b 100644
> --- a/drivers/dma/ep93xx_dma.c
> +++ b/drivers/dma/ep93xx_dma.c
> @@ -1120,6 +1120,7 @@ fail:
>   * @buf_len: length of the buffer (in bytes)
>   * @period_len: lenght of a single period
>   * @dir: direction of the operation
> + * @flags: tx descriptor status flags
>   * @context: operation context (ignored)
>   *
>   * Prepares a descriptor for cyclic DMA operation. This means that once the
> @@ -1133,7 +1134,8 @@ fail:
>  static struct dma_async_tx_descriptor *
>  ep93xx_dma_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t dma_addr,
>  			   size_t buf_len, size_t period_len,
> -			   enum dma_transfer_direction dir, void *context)
> +			   enum dma_transfer_direction dir, unsigned long flags,
> +			   void *context)
>  {
>  	struct ep93xx_dma_chan *edmac = to_ep93xx_dma_chan(chan);
>  	struct ep93xx_dma_desc *desc, *first;
> diff --git a/drivers/dma/imx-dma.c b/drivers/dma/imx-dma.c
> index 5084975..41b4376 100644
> --- a/drivers/dma/imx-dma.c
> +++ b/drivers/dma/imx-dma.c
> @@ -801,7 +801,7 @@ static struct dma_async_tx_descriptor *imxdma_prep_slave_sg(
>  static struct dma_async_tx_descriptor *imxdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct imxdma_channel *imxdmac = to_imxdma_chan(chan);
>  	struct imxdma_engine *imxdma = imxdmac->imxdma;
> diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
> index 1dc2a4a..2c5fd3e 100644
> --- a/drivers/dma/imx-sdma.c
> +++ b/drivers/dma/imx-sdma.c
> @@ -1012,7 +1012,7 @@ err_out:
>  static struct dma_async_tx_descriptor *sdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct sdma_channel *sdmac = to_sdma_chan(chan);
>  	struct sdma_engine *sdma = sdmac->sdma;
> diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c
> index 8a15cf2..6d52bd4 100644
> --- a/drivers/dma/mmp_tdma.c
> +++ b/drivers/dma/mmp_tdma.c
> @@ -358,7 +358,7 @@ struct mmp_tdma_desc *mmp_tdma_alloc_descriptor(struct mmp_tdma_chan *tdmac)
>  static struct dma_async_tx_descriptor *mmp_tdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct mmp_tdma_chan *tdmac = to_mmp_tdma_chan(chan);
>  	struct mmp_tdma_desc *desc;
> diff --git a/drivers/dma/mxs-dma.c b/drivers/dma/mxs-dma.c
> index 7f41b25..734a4eb 100644
> --- a/drivers/dma/mxs-dma.c
> +++ b/drivers/dma/mxs-dma.c
> @@ -531,7 +531,7 @@ err_out:
>  static struct dma_async_tx_descriptor *mxs_dma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct mxs_dma_chan *mxs_chan = to_mxs_dma_chan(chan);
>  	struct mxs_dma_engine *mxs_dma = mxs_chan->mxs_dma;
> diff --git a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c
> index 71d7869..4d2650f 100644
> --- a/drivers/dma/omap-dma.c
> +++ b/drivers/dma/omap-dma.c
> @@ -366,7 +366,8 @@ static struct dma_async_tx_descriptor *omap_dma_prep_slave_sg(
>  
>  static struct dma_async_tx_descriptor *omap_dma_prep_dma_cyclic(
>  	struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
> -	size_t period_len, enum dma_transfer_direction dir, void *context)
> +	size_t period_len, enum dma_transfer_direction dir, unsigned long flags,
> +	void *context)
>  {
>  	struct omap_chan *c = to_omap_dma_chan(chan);
>  	enum dma_slave_buswidth dev_width;
> diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
> index e4feba6..0035645 100644
> --- a/drivers/dma/pl330.c
> +++ b/drivers/dma/pl330.c
> @@ -2683,7 +2683,7 @@ static inline int get_burst_len(struct dma_pl330_desc *desc, size_t len)
>  static struct dma_async_tx_descriptor *pl330_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct dma_pl330_desc *desc;
>  	struct dma_pl330_chan *pch = to_pchan(chan);
> diff --git a/drivers/dma/sa11x0-dma.c b/drivers/dma/sa11x0-dma.c
> index f5a7360..b893159 100644
> --- a/drivers/dma/sa11x0-dma.c
> +++ b/drivers/dma/sa11x0-dma.c
> @@ -614,7 +614,7 @@ static struct dma_async_tx_descriptor *sa11x0_dma_prep_slave_sg(
>  
>  static struct dma_async_tx_descriptor *sa11x0_dma_prep_dma_cyclic(
>  	struct dma_chan *chan, dma_addr_t addr, size_t size, size_t period,
> -	enum dma_transfer_direction dir, void *context)
> +	enum dma_transfer_direction dir, unsigned long flags, void *context)
>  {
>  	struct sa11x0_dma_chan *c = to_sa11x0_dma_chan(chan);
>  	struct sa11x0_dma_desc *txd;
> diff --git a/drivers/dma/sirf-dma.c b/drivers/dma/sirf-dma.c
> index 434ad31..3eed8b3 100644
> --- a/drivers/dma/sirf-dma.c
> +++ b/drivers/dma/sirf-dma.c
> @@ -489,7 +489,7 @@ err_dir:
>  static struct dma_async_tx_descriptor *
>  sirfsoc_dma_prep_cyclic(struct dma_chan *chan, dma_addr_t addr,
>  	size_t buf_len, size_t period_len,
> -	enum dma_transfer_direction direction, void *context)
> +	enum dma_transfer_direction direction, unsigned long flags, void *context)
>  {
>  	struct sirfsoc_dma_chan *schan = dma_chan_to_sirfsoc_dma_chan(chan);
>  	struct sirfsoc_dma_desc *sdesc = NULL;
> diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
> index 000d309..eee8d9b 100644
> --- a/drivers/dma/ste_dma40.c
> +++ b/drivers/dma/ste_dma40.c
> @@ -2347,7 +2347,8 @@ static struct dma_async_tx_descriptor *d40_prep_slave_sg(struct dma_chan *chan,
>  static struct dma_async_tx_descriptor *
>  dma40_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t dma_addr,
>  		     size_t buf_len, size_t period_len,
> -		     enum dma_transfer_direction direction, void *context)
> +		     enum dma_transfer_direction direction, unsigned long flags,
> +		     void *context)
>  {
>  	unsigned int periods = buf_len / period_len;
>  	struct dma_async_tx_descriptor *txd;
> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
> index 24acd71..b42b6ff 100644
> --- a/drivers/dma/tegra20-apb-dma.c
> +++ b/drivers/dma/tegra20-apb-dma.c
> @@ -990,7 +990,7 @@ static struct dma_async_tx_descriptor *tegra_dma_prep_slave_sg(
>  struct dma_async_tx_descriptor *tegra_dma_prep_dma_cyclic(
>  	struct dma_chan *dc, dma_addr_t buf_addr, size_t buf_len,
>  	size_t period_len, enum dma_transfer_direction direction,
> -	void *context)
> +	unsigned long flags, void *context)
>  {
>  	struct tegra_dma_channel *tdc = to_tegra_dma_chan(dc);
>  	struct tegra_dma_desc *dma_desc = NULL;
> diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h
> index 2abcac5..d3201e4 100644
> --- a/include/linux/dmaengine.h
> +++ b/include/linux/dmaengine.h
> @@ -591,7 +591,7 @@ struct dma_device {
>  	struct dma_async_tx_descriptor *(*device_prep_dma_cyclic)(
>  		struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context);
> +		unsigned long flags, void *context);
>  	struct dma_async_tx_descriptor *(*device_prep_interleaved_dma)(
>  		struct dma_chan *chan, struct dma_interleaved_template *xt,
>  		unsigned long flags);
> @@ -657,7 +657,7 @@ static inline struct dma_async_tx_descriptor *dmaengine_prep_dma_cyclic(
>  		unsigned long flags)
>  {
>  	return chan->device->device_prep_dma_cyclic(chan, buf_addr, buf_len,
> -						period_len, dir, NULL);
> +						period_len, dir, flags, NULL);
>  }
>  
>  static inline int dmaengine_terminate_all(struct dma_chan *chan)
> 


-- 
Nicolas Ferre

WARNING: multiple messages have this Message-ID (diff)
From: nicolas.ferre@atmel.com (Nicolas Ferre)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 04/15] dmaengine: Pass flags via device_prep_dma_cyclic() callback
Date: Mon, 17 Sep 2012 12:06:06 +0200	[thread overview]
Message-ID: <5056F60E.1080305@atmel.com> (raw)
In-Reply-To: <1347624358-25582-5-git-send-email-peter.ujfalusi@ti.com>

On 09/14/2012 02:05 PM, Peter Ujfalusi :
> 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.
> 
> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
> CC: Nicolas Ferre <nicolas.ferre@atmel.com>
> CC: Barry Song <baohua.song@csr.com>
> CC: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
> CC: Russell King - ARM Linux <linux@arm.linux.org.uk>
> CC: Vista Silicon <javier.martin@vista-silicon.com>
> CC: Zhangfei Gao <zhangfei.gao@marvell.com>
> CC: Shawn Guo <shawn.guo@linaro.org>
> CC: Laxman Dewangan <ldewangan@nvidia.com>
> ---
>  drivers/dma/at_hdmac.c        | 3 ++-

For Atmel's driver:

Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

>  drivers/dma/ep93xx_dma.c      | 4 +++-
>  drivers/dma/imx-dma.c         | 2 +-
>  drivers/dma/imx-sdma.c        | 2 +-
>  drivers/dma/mmp_tdma.c        | 2 +-
>  drivers/dma/mxs-dma.c         | 2 +-
>  drivers/dma/omap-dma.c        | 3 ++-
>  drivers/dma/pl330.c           | 2 +-
>  drivers/dma/sa11x0-dma.c      | 2 +-
>  drivers/dma/sirf-dma.c        | 2 +-
>  drivers/dma/ste_dma40.c       | 3 ++-
>  drivers/dma/tegra20-apb-dma.c | 2 +-
>  include/linux/dmaengine.h     | 4 ++--
>  13 files changed, 19 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/dma/at_hdmac.c b/drivers/dma/at_hdmac.c
> index 3934fcc..7e5f6b6 100644
> --- a/drivers/dma/at_hdmac.c
> +++ b/drivers/dma/at_hdmac.c
> @@ -841,12 +841,13 @@ atc_dma_cyclic_fill_desc(struct dma_chan *chan, struct at_desc *desc,
>   * @buf_len: total number of bytes for the entire buffer
>   * @period_len: number of bytes for each period
>   * @direction: transfer direction, to or from device
> + * @flags: tx descriptor status flags
>   * @context: transfer context (ignored)
>   */
>  static struct dma_async_tx_descriptor *
>  atc_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct at_dma_chan	*atchan = to_at_dma_chan(chan);
>  	struct at_dma_slave	*atslave = chan->private;
> diff --git a/drivers/dma/ep93xx_dma.c b/drivers/dma/ep93xx_dma.c
> index c64917e..493735b 100644
> --- a/drivers/dma/ep93xx_dma.c
> +++ b/drivers/dma/ep93xx_dma.c
> @@ -1120,6 +1120,7 @@ fail:
>   * @buf_len: length of the buffer (in bytes)
>   * @period_len: lenght of a single period
>   * @dir: direction of the operation
> + * @flags: tx descriptor status flags
>   * @context: operation context (ignored)
>   *
>   * Prepares a descriptor for cyclic DMA operation. This means that once the
> @@ -1133,7 +1134,8 @@ fail:
>  static struct dma_async_tx_descriptor *
>  ep93xx_dma_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t dma_addr,
>  			   size_t buf_len, size_t period_len,
> -			   enum dma_transfer_direction dir, void *context)
> +			   enum dma_transfer_direction dir, unsigned long flags,
> +			   void *context)
>  {
>  	struct ep93xx_dma_chan *edmac = to_ep93xx_dma_chan(chan);
>  	struct ep93xx_dma_desc *desc, *first;
> diff --git a/drivers/dma/imx-dma.c b/drivers/dma/imx-dma.c
> index 5084975..41b4376 100644
> --- a/drivers/dma/imx-dma.c
> +++ b/drivers/dma/imx-dma.c
> @@ -801,7 +801,7 @@ static struct dma_async_tx_descriptor *imxdma_prep_slave_sg(
>  static struct dma_async_tx_descriptor *imxdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct imxdma_channel *imxdmac = to_imxdma_chan(chan);
>  	struct imxdma_engine *imxdma = imxdmac->imxdma;
> diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
> index 1dc2a4a..2c5fd3e 100644
> --- a/drivers/dma/imx-sdma.c
> +++ b/drivers/dma/imx-sdma.c
> @@ -1012,7 +1012,7 @@ err_out:
>  static struct dma_async_tx_descriptor *sdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct sdma_channel *sdmac = to_sdma_chan(chan);
>  	struct sdma_engine *sdma = sdmac->sdma;
> diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c
> index 8a15cf2..6d52bd4 100644
> --- a/drivers/dma/mmp_tdma.c
> +++ b/drivers/dma/mmp_tdma.c
> @@ -358,7 +358,7 @@ struct mmp_tdma_desc *mmp_tdma_alloc_descriptor(struct mmp_tdma_chan *tdmac)
>  static struct dma_async_tx_descriptor *mmp_tdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct mmp_tdma_chan *tdmac = to_mmp_tdma_chan(chan);
>  	struct mmp_tdma_desc *desc;
> diff --git a/drivers/dma/mxs-dma.c b/drivers/dma/mxs-dma.c
> index 7f41b25..734a4eb 100644
> --- a/drivers/dma/mxs-dma.c
> +++ b/drivers/dma/mxs-dma.c
> @@ -531,7 +531,7 @@ err_out:
>  static struct dma_async_tx_descriptor *mxs_dma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct mxs_dma_chan *mxs_chan = to_mxs_dma_chan(chan);
>  	struct mxs_dma_engine *mxs_dma = mxs_chan->mxs_dma;
> diff --git a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c
> index 71d7869..4d2650f 100644
> --- a/drivers/dma/omap-dma.c
> +++ b/drivers/dma/omap-dma.c
> @@ -366,7 +366,8 @@ static struct dma_async_tx_descriptor *omap_dma_prep_slave_sg(
>  
>  static struct dma_async_tx_descriptor *omap_dma_prep_dma_cyclic(
>  	struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
> -	size_t period_len, enum dma_transfer_direction dir, void *context)
> +	size_t period_len, enum dma_transfer_direction dir, unsigned long flags,
> +	void *context)
>  {
>  	struct omap_chan *c = to_omap_dma_chan(chan);
>  	enum dma_slave_buswidth dev_width;
> diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
> index e4feba6..0035645 100644
> --- a/drivers/dma/pl330.c
> +++ b/drivers/dma/pl330.c
> @@ -2683,7 +2683,7 @@ static inline int get_burst_len(struct dma_pl330_desc *desc, size_t len)
>  static struct dma_async_tx_descriptor *pl330_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct dma_pl330_desc *desc;
>  	struct dma_pl330_chan *pch = to_pchan(chan);
> diff --git a/drivers/dma/sa11x0-dma.c b/drivers/dma/sa11x0-dma.c
> index f5a7360..b893159 100644
> --- a/drivers/dma/sa11x0-dma.c
> +++ b/drivers/dma/sa11x0-dma.c
> @@ -614,7 +614,7 @@ static struct dma_async_tx_descriptor *sa11x0_dma_prep_slave_sg(
>  
>  static struct dma_async_tx_descriptor *sa11x0_dma_prep_dma_cyclic(
>  	struct dma_chan *chan, dma_addr_t addr, size_t size, size_t period,
> -	enum dma_transfer_direction dir, void *context)
> +	enum dma_transfer_direction dir, unsigned long flags, void *context)
>  {
>  	struct sa11x0_dma_chan *c = to_sa11x0_dma_chan(chan);
>  	struct sa11x0_dma_desc *txd;
> diff --git a/drivers/dma/sirf-dma.c b/drivers/dma/sirf-dma.c
> index 434ad31..3eed8b3 100644
> --- a/drivers/dma/sirf-dma.c
> +++ b/drivers/dma/sirf-dma.c
> @@ -489,7 +489,7 @@ err_dir:
>  static struct dma_async_tx_descriptor *
>  sirfsoc_dma_prep_cyclic(struct dma_chan *chan, dma_addr_t addr,
>  	size_t buf_len, size_t period_len,
> -	enum dma_transfer_direction direction, void *context)
> +	enum dma_transfer_direction direction, unsigned long flags, void *context)
>  {
>  	struct sirfsoc_dma_chan *schan = dma_chan_to_sirfsoc_dma_chan(chan);
>  	struct sirfsoc_dma_desc *sdesc = NULL;
> diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
> index 000d309..eee8d9b 100644
> --- a/drivers/dma/ste_dma40.c
> +++ b/drivers/dma/ste_dma40.c
> @@ -2347,7 +2347,8 @@ static struct dma_async_tx_descriptor *d40_prep_slave_sg(struct dma_chan *chan,
>  static struct dma_async_tx_descriptor *
>  dma40_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t dma_addr,
>  		     size_t buf_len, size_t period_len,
> -		     enum dma_transfer_direction direction, void *context)
> +		     enum dma_transfer_direction direction, unsigned long flags,
> +		     void *context)
>  {
>  	unsigned int periods = buf_len / period_len;
>  	struct dma_async_tx_descriptor *txd;
> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
> index 24acd71..b42b6ff 100644
> --- a/drivers/dma/tegra20-apb-dma.c
> +++ b/drivers/dma/tegra20-apb-dma.c
> @@ -990,7 +990,7 @@ static struct dma_async_tx_descriptor *tegra_dma_prep_slave_sg(
>  struct dma_async_tx_descriptor *tegra_dma_prep_dma_cyclic(
>  	struct dma_chan *dc, dma_addr_t buf_addr, size_t buf_len,
>  	size_t period_len, enum dma_transfer_direction direction,
> -	void *context)
> +	unsigned long flags, void *context)
>  {
>  	struct tegra_dma_channel *tdc = to_tegra_dma_chan(dc);
>  	struct tegra_dma_desc *dma_desc = NULL;
> diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h
> index 2abcac5..d3201e4 100644
> --- a/include/linux/dmaengine.h
> +++ b/include/linux/dmaengine.h
> @@ -591,7 +591,7 @@ struct dma_device {
>  	struct dma_async_tx_descriptor *(*device_prep_dma_cyclic)(
>  		struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context);
> +		unsigned long flags, void *context);
>  	struct dma_async_tx_descriptor *(*device_prep_interleaved_dma)(
>  		struct dma_chan *chan, struct dma_interleaved_template *xt,
>  		unsigned long flags);
> @@ -657,7 +657,7 @@ static inline struct dma_async_tx_descriptor *dmaengine_prep_dma_cyclic(
>  		unsigned long flags)
>  {
>  	return chan->device->device_prep_dma_cyclic(chan, buf_addr, buf_len,
> -						period_len, dir, NULL);
> +						period_len, dir, flags, NULL);
>  }
>  
>  static inline int dmaengine_terminate_all(struct dma_chan *chan)
> 


-- 
Nicolas Ferre

WARNING: multiple messages have this Message-ID (diff)
From: Nicolas Ferre <nicolas.ferre@atmel.com>
To: Peter Ujfalusi <peter.ujfalusi@ti.com>,
	Vinod Koul <vinod.koul@intel.com>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>,
	Liam Girdwood <lrg@ti.com>, Tony Lindgren <tony@atomide.com>,
	Russell King <rmk+kernel@arm.linux.org.uk>,
	Dan Williams <djbw@fb.com>,
	Jarkko Nikula <jarkko.nikula@bitmer.com>,
	<alsa-devel@alsa-project.org>, <linux-omap@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>,
	Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>,
	Ricardo Neri <ricardo.neri@ti.com>,
	Lars-Peter Clausen <lars@metafoo.de>,
	Barry Song <baohua.song@csr.com>,
	Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>,
	Russell King - ARM Linux <linux@arm.linux.org.uk>,
	Vista Silicon <javier.martin@vista-silicon.com>,
	Zhangfei Gao <zhangfei.gao@marvell.com>,
	Shawn Guo <shawn.guo@linaro.org>,
	Laxman Dewangan <ldewangan@nvidia.com>
Subject: Re: [PATCH v3 04/15] dmaengine: Pass flags via device_prep_dma_cyclic() callback
Date: Mon, 17 Sep 2012 12:06:06 +0200	[thread overview]
Message-ID: <5056F60E.1080305@atmel.com> (raw)
In-Reply-To: <1347624358-25582-5-git-send-email-peter.ujfalusi@ti.com>

On 09/14/2012 02:05 PM, Peter Ujfalusi :
> 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.
> 
> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
> CC: Nicolas Ferre <nicolas.ferre@atmel.com>
> CC: Barry Song <baohua.song@csr.com>
> CC: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
> CC: Russell King - ARM Linux <linux@arm.linux.org.uk>
> CC: Vista Silicon <javier.martin@vista-silicon.com>
> CC: Zhangfei Gao <zhangfei.gao@marvell.com>
> CC: Shawn Guo <shawn.guo@linaro.org>
> CC: Laxman Dewangan <ldewangan@nvidia.com>
> ---
>  drivers/dma/at_hdmac.c        | 3 ++-

For Atmel's driver:

Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>

>  drivers/dma/ep93xx_dma.c      | 4 +++-
>  drivers/dma/imx-dma.c         | 2 +-
>  drivers/dma/imx-sdma.c        | 2 +-
>  drivers/dma/mmp_tdma.c        | 2 +-
>  drivers/dma/mxs-dma.c         | 2 +-
>  drivers/dma/omap-dma.c        | 3 ++-
>  drivers/dma/pl330.c           | 2 +-
>  drivers/dma/sa11x0-dma.c      | 2 +-
>  drivers/dma/sirf-dma.c        | 2 +-
>  drivers/dma/ste_dma40.c       | 3 ++-
>  drivers/dma/tegra20-apb-dma.c | 2 +-
>  include/linux/dmaengine.h     | 4 ++--
>  13 files changed, 19 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/dma/at_hdmac.c b/drivers/dma/at_hdmac.c
> index 3934fcc..7e5f6b6 100644
> --- a/drivers/dma/at_hdmac.c
> +++ b/drivers/dma/at_hdmac.c
> @@ -841,12 +841,13 @@ atc_dma_cyclic_fill_desc(struct dma_chan *chan, struct at_desc *desc,
>   * @buf_len: total number of bytes for the entire buffer
>   * @period_len: number of bytes for each period
>   * @direction: transfer direction, to or from device
> + * @flags: tx descriptor status flags
>   * @context: transfer context (ignored)
>   */
>  static struct dma_async_tx_descriptor *
>  atc_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct at_dma_chan	*atchan = to_at_dma_chan(chan);
>  	struct at_dma_slave	*atslave = chan->private;
> diff --git a/drivers/dma/ep93xx_dma.c b/drivers/dma/ep93xx_dma.c
> index c64917e..493735b 100644
> --- a/drivers/dma/ep93xx_dma.c
> +++ b/drivers/dma/ep93xx_dma.c
> @@ -1120,6 +1120,7 @@ fail:
>   * @buf_len: length of the buffer (in bytes)
>   * @period_len: lenght of a single period
>   * @dir: direction of the operation
> + * @flags: tx descriptor status flags
>   * @context: operation context (ignored)
>   *
>   * Prepares a descriptor for cyclic DMA operation. This means that once the
> @@ -1133,7 +1134,8 @@ fail:
>  static struct dma_async_tx_descriptor *
>  ep93xx_dma_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t dma_addr,
>  			   size_t buf_len, size_t period_len,
> -			   enum dma_transfer_direction dir, void *context)
> +			   enum dma_transfer_direction dir, unsigned long flags,
> +			   void *context)
>  {
>  	struct ep93xx_dma_chan *edmac = to_ep93xx_dma_chan(chan);
>  	struct ep93xx_dma_desc *desc, *first;
> diff --git a/drivers/dma/imx-dma.c b/drivers/dma/imx-dma.c
> index 5084975..41b4376 100644
> --- a/drivers/dma/imx-dma.c
> +++ b/drivers/dma/imx-dma.c
> @@ -801,7 +801,7 @@ static struct dma_async_tx_descriptor *imxdma_prep_slave_sg(
>  static struct dma_async_tx_descriptor *imxdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct imxdma_channel *imxdmac = to_imxdma_chan(chan);
>  	struct imxdma_engine *imxdma = imxdmac->imxdma;
> diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
> index 1dc2a4a..2c5fd3e 100644
> --- a/drivers/dma/imx-sdma.c
> +++ b/drivers/dma/imx-sdma.c
> @@ -1012,7 +1012,7 @@ err_out:
>  static struct dma_async_tx_descriptor *sdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct sdma_channel *sdmac = to_sdma_chan(chan);
>  	struct sdma_engine *sdma = sdmac->sdma;
> diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c
> index 8a15cf2..6d52bd4 100644
> --- a/drivers/dma/mmp_tdma.c
> +++ b/drivers/dma/mmp_tdma.c
> @@ -358,7 +358,7 @@ struct mmp_tdma_desc *mmp_tdma_alloc_descriptor(struct mmp_tdma_chan *tdmac)
>  static struct dma_async_tx_descriptor *mmp_tdma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct mmp_tdma_chan *tdmac = to_mmp_tdma_chan(chan);
>  	struct mmp_tdma_desc *desc;
> diff --git a/drivers/dma/mxs-dma.c b/drivers/dma/mxs-dma.c
> index 7f41b25..734a4eb 100644
> --- a/drivers/dma/mxs-dma.c
> +++ b/drivers/dma/mxs-dma.c
> @@ -531,7 +531,7 @@ err_out:
>  static struct dma_async_tx_descriptor *mxs_dma_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct mxs_dma_chan *mxs_chan = to_mxs_dma_chan(chan);
>  	struct mxs_dma_engine *mxs_dma = mxs_chan->mxs_dma;
> diff --git a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c
> index 71d7869..4d2650f 100644
> --- a/drivers/dma/omap-dma.c
> +++ b/drivers/dma/omap-dma.c
> @@ -366,7 +366,8 @@ static struct dma_async_tx_descriptor *omap_dma_prep_slave_sg(
>  
>  static struct dma_async_tx_descriptor *omap_dma_prep_dma_cyclic(
>  	struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
> -	size_t period_len, enum dma_transfer_direction dir, void *context)
> +	size_t period_len, enum dma_transfer_direction dir, unsigned long flags,
> +	void *context)
>  {
>  	struct omap_chan *c = to_omap_dma_chan(chan);
>  	enum dma_slave_buswidth dev_width;
> diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
> index e4feba6..0035645 100644
> --- a/drivers/dma/pl330.c
> +++ b/drivers/dma/pl330.c
> @@ -2683,7 +2683,7 @@ static inline int get_burst_len(struct dma_pl330_desc *desc, size_t len)
>  static struct dma_async_tx_descriptor *pl330_prep_dma_cyclic(
>  		struct dma_chan *chan, dma_addr_t dma_addr, size_t len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context)
> +		unsigned long flags, void *context)
>  {
>  	struct dma_pl330_desc *desc;
>  	struct dma_pl330_chan *pch = to_pchan(chan);
> diff --git a/drivers/dma/sa11x0-dma.c b/drivers/dma/sa11x0-dma.c
> index f5a7360..b893159 100644
> --- a/drivers/dma/sa11x0-dma.c
> +++ b/drivers/dma/sa11x0-dma.c
> @@ -614,7 +614,7 @@ static struct dma_async_tx_descriptor *sa11x0_dma_prep_slave_sg(
>  
>  static struct dma_async_tx_descriptor *sa11x0_dma_prep_dma_cyclic(
>  	struct dma_chan *chan, dma_addr_t addr, size_t size, size_t period,
> -	enum dma_transfer_direction dir, void *context)
> +	enum dma_transfer_direction dir, unsigned long flags, void *context)
>  {
>  	struct sa11x0_dma_chan *c = to_sa11x0_dma_chan(chan);
>  	struct sa11x0_dma_desc *txd;
> diff --git a/drivers/dma/sirf-dma.c b/drivers/dma/sirf-dma.c
> index 434ad31..3eed8b3 100644
> --- a/drivers/dma/sirf-dma.c
> +++ b/drivers/dma/sirf-dma.c
> @@ -489,7 +489,7 @@ err_dir:
>  static struct dma_async_tx_descriptor *
>  sirfsoc_dma_prep_cyclic(struct dma_chan *chan, dma_addr_t addr,
>  	size_t buf_len, size_t period_len,
> -	enum dma_transfer_direction direction, void *context)
> +	enum dma_transfer_direction direction, unsigned long flags, void *context)
>  {
>  	struct sirfsoc_dma_chan *schan = dma_chan_to_sirfsoc_dma_chan(chan);
>  	struct sirfsoc_dma_desc *sdesc = NULL;
> diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
> index 000d309..eee8d9b 100644
> --- a/drivers/dma/ste_dma40.c
> +++ b/drivers/dma/ste_dma40.c
> @@ -2347,7 +2347,8 @@ static struct dma_async_tx_descriptor *d40_prep_slave_sg(struct dma_chan *chan,
>  static struct dma_async_tx_descriptor *
>  dma40_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t dma_addr,
>  		     size_t buf_len, size_t period_len,
> -		     enum dma_transfer_direction direction, void *context)
> +		     enum dma_transfer_direction direction, unsigned long flags,
> +		     void *context)
>  {
>  	unsigned int periods = buf_len / period_len;
>  	struct dma_async_tx_descriptor *txd;
> diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c
> index 24acd71..b42b6ff 100644
> --- a/drivers/dma/tegra20-apb-dma.c
> +++ b/drivers/dma/tegra20-apb-dma.c
> @@ -990,7 +990,7 @@ static struct dma_async_tx_descriptor *tegra_dma_prep_slave_sg(
>  struct dma_async_tx_descriptor *tegra_dma_prep_dma_cyclic(
>  	struct dma_chan *dc, dma_addr_t buf_addr, size_t buf_len,
>  	size_t period_len, enum dma_transfer_direction direction,
> -	void *context)
> +	unsigned long flags, void *context)
>  {
>  	struct tegra_dma_channel *tdc = to_tegra_dma_chan(dc);
>  	struct tegra_dma_desc *dma_desc = NULL;
> diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h
> index 2abcac5..d3201e4 100644
> --- a/include/linux/dmaengine.h
> +++ b/include/linux/dmaengine.h
> @@ -591,7 +591,7 @@ struct dma_device {
>  	struct dma_async_tx_descriptor *(*device_prep_dma_cyclic)(
>  		struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
>  		size_t period_len, enum dma_transfer_direction direction,
> -		void *context);
> +		unsigned long flags, void *context);
>  	struct dma_async_tx_descriptor *(*device_prep_interleaved_dma)(
>  		struct dma_chan *chan, struct dma_interleaved_template *xt,
>  		unsigned long flags);
> @@ -657,7 +657,7 @@ static inline struct dma_async_tx_descriptor *dmaengine_prep_dma_cyclic(
>  		unsigned long flags)
>  {
>  	return chan->device->device_prep_dma_cyclic(chan, buf_addr, buf_len,
> -						period_len, dir, NULL);
> +						period_len, dir, flags, NULL);
>  }
>  
>  static inline int dmaengine_terminate_all(struct dma_chan *chan)
> 


-- 
Nicolas Ferre

  parent reply	other threads:[~2012-09-17 10:06 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-14 12:05 [PATCH v3 00/15] ASoC: OMAP: Convert to use dmaengine Peter Ujfalusi
2012-09-14 12:05 ` Peter Ujfalusi
2012-09-14 12:05 ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 01/15] dmaengine: omap: Support for element mode in cyclic DMA Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 02/15] dmaengine: omap: Add support for pause/resume in cyclic dma mode Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-17  3:13   ` Vinod Koul
2012-09-17  3:13     ` Vinod Koul
2012-09-17  3:13     ` Vinod Koul
2012-09-17  8:41     ` Peter Ujfalusi
2012-09-17  8:41       ` Peter Ujfalusi
2012-09-18  8:28     ` Russell King - ARM Linux
2012-09-18  8:28       ` Russell King - ARM Linux
2012-09-18  8:28       ` Russell King - ARM Linux
2012-09-17  9:55   ` Vinod Koul
2012-09-17  9:55     ` Vinod Koul
2012-09-17  9:55     ` Vinod Koul
2012-09-14 12:05 ` [PATCH v3 03/15] dmaengine: Add flags parameter to dmaengine_prep_dma_cyclic() Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-17  9:58   ` Vinod Koul
2012-09-17  9:58     ` Vinod Koul
2012-09-22 15:09   ` Mark Brown
2012-09-22 15:09     ` Mark Brown
2012-09-22 15:09     ` Mark Brown
2012-09-14 12:05 ` [PATCH v3 04/15] dmaengine: Pass flags via device_prep_dma_cyclic() callback Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-17  9:59   ` Vinod Koul
2012-09-17  9:59     ` Vinod Koul
2012-09-17  9:59     ` Vinod Koul
2012-09-17 10:06   ` Nicolas Ferre [this message]
2012-09-17 10:06     ` Nicolas Ferre
2012-09-17 10:06     ` Nicolas Ferre
2012-09-19  2:45   ` Shawn Guo
2012-09-19  2:45     ` Shawn Guo
2012-09-19  2:45     ` Shawn Guo
2012-09-14 12:05 ` [PATCH v3 05/15] dmaengine: omap-dma: Add support to suppress interrupts in cyclic mode Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-17 10:00   ` Vinod Koul
2012-09-17 10:00     ` Vinod Koul
2012-09-14 12:05 ` [PATCH v3 06/15] ASoC: omap-mcbsp: Use sDMA packet mode instead of frame mode Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 07/15] ASoC: omap-pcm: Select sDMA synchronization based on packet_size Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 08/15] ASoC: OMAP: Remove sync_mode from omap_pcm_dma_data struct Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 09/15] ASoC: omap-pcm: Prepare to configure the DMA data_type based on stream properties Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 10/15] ARM: OMAP4: hwmod_data: Add resource names to McPDM memory ranges Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 11/15] ASoC: omap-mcpdm: Use platform_get_resource_* to get resources Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 12/15] ASoC: OMAP: mcbsp, mcpdm, dmic: Let omap-pcm to pick the dma_type Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 13/15] ASoC: omap-pcm, omap-dmic: Change the use of omap_pcm_dma_data->data_type Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 14/15] ASoC: OMAP: mcbsp, mcpdm, dmic, hdmi: Set dma_data at startup time Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-14 12:05 ` [PATCH v3 15/15] ASoC: omap-pcm: Convert to use dmaengine Peter Ujfalusi
2012-09-14 12:05   ` Peter Ujfalusi
2012-09-15 21:38 ` [PATCH v3 00/15] ASoC: OMAP: " Janusz Krzysztofik
2012-09-15 21:38   ` [alsa-devel] " Janusz Krzysztofik
2012-09-15 21:38   ` Janusz Krzysztofik
2012-09-17  3:17 ` Vinod Koul
2012-09-17  3:17   ` Vinod Koul
2012-09-17  3:17   ` Vinod Koul
2012-09-17  8:44   ` [alsa-devel] " Peter Ujfalusi
2012-09-17  8:44     ` Peter Ujfalusi
2012-09-17  8:44     ` Peter Ujfalusi
2012-09-17  9:51     ` Vinod Koul
2012-09-17  9:51       ` [alsa-devel] " Vinod Koul
2012-09-17  9:51       ` Vinod Koul
2012-09-24 23:36 ` Ricardo Neri
2012-09-24 23:36   ` [alsa-devel] " Ricardo Neri
2012-09-24 23:36   ` Ricardo Neri

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5056F60E.1080305@atmel.com \
    --to=nicolas.ferre@atmel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=baohua.song@csr.com \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=djbw@fb.com \
    --cc=jarkko.nikula@bitmer.com \
    --cc=javier.martin@vista-silicon.com \
    --cc=jkrzyszt@tis.icnet.pl \
    --cc=lars@metafoo.de \
    --cc=ldewangan@nvidia.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=lrg@ti.com \
    --cc=peter.ujfalusi@ti.com \
    --cc=ricardo.neri@ti.com \
    --cc=rmk+kernel@arm.linux.org.uk \
    --cc=shawn.guo@linaro.org \
    --cc=srinidhi.kasagar@stericsson.com \
    --cc=tony@atomide.com \
    --cc=vinod.koul@intel.com \
    --cc=zhangfei.gao@marvell.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.