From: Lars-Peter Clausen <lars@metafoo.de>
To: Liam Girdwood <lrg@ti.com>
Cc: alsa-devel@alsa-project.org, Takashi Iwai <tiwai@suse.de>,
Mark Brown <broonie@opensource.wolfsonmicro.com>,
Santosh Shilimkar <santosh.shilimkar@ti.com>,
linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Subject: Re: [RFC 1/3] ASoC: dmaengine: Don't use runtime private data for dmaengine data
Date: Mon, 03 Sep 2012 22:25:49 +0200 [thread overview]
Message-ID: <5045124D.3050604@metafoo.de> (raw)
In-Reply-To: <E1T8ZzV-0002vp-2j@rmk-PC.arm.linux.org.uk>
On 09/03/2012 06:59 PM, Liam Girdwood wrote:
> Use a dedicated member to store dmaengine data so that drivers can
> use private data for their own purposes.
>
The idea was that we'll eventually get to a point where we won't need private
data for the drivers using the generic dmaengine code. But for the transitional
period there is snd_dmaengine_pcm_{set,get}_data which allows to attach driver
private data to the dmaengine pcm. For an example see how the other users of
dmaengine pcm handle this.
> Signed-off-by: Liam Girdwood <lrg@ti.com>
> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
> ---
> include/sound/pcm.h | 2 ++
> sound/soc/soc-dmaengine-pcm.c | 2 +-
> 2 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/include/sound/pcm.h b/include/sound/pcm.h
> index cdca2ab..f9e4909 100644
> --- a/include/sound/pcm.h
> +++ b/include/sound/pcm.h
> @@ -269,6 +269,7 @@ struct snd_pcm_hw_constraint_list {
> };
>
> struct snd_pcm_hwptr_log;
> +struct dmaengine_pcm_runtime_data;
>
> struct snd_pcm_runtime {
> /* -- Status -- */
> @@ -345,6 +346,7 @@ struct snd_pcm_runtime {
> unsigned char *dma_area; /* DMA area */
> dma_addr_t dma_addr; /* physical bus address (not accessible from main CPU) */
> size_t dma_bytes; /* size of DMA area */
> + struct dmaengine_pcm_runtime_data *dmaengine_data;
>
> struct snd_dma_buffer *dma_buffer_p; /* allocated buffer */
>
> diff --git a/sound/soc/soc-dmaengine-pcm.c b/sound/soc/soc-dmaengine-pcm.c
> index 5df529e..27fa5ad 100644
> --- a/sound/soc/soc-dmaengine-pcm.c
> +++ b/sound/soc/soc-dmaengine-pcm.c
> @@ -40,7 +40,7 @@ struct dmaengine_pcm_runtime_data {
> static inline struct dmaengine_pcm_runtime_data *substream_to_prtd(
> const struct snd_pcm_substream *substream)
> {
> - return substream->runtime->private_data;
> + return substream->runtime->dmaengine_data;
> }
>
> /**
WARNING: multiple messages have this Message-ID (diff)
From: lars@metafoo.de (Lars-Peter Clausen)
To: linux-arm-kernel@lists.infradead.org
Subject: [alsa-devel] [RFC 1/3] ASoC: dmaengine: Don't use runtime private data for dmaengine data
Date: Mon, 03 Sep 2012 22:25:49 +0200 [thread overview]
Message-ID: <5045124D.3050604@metafoo.de> (raw)
In-Reply-To: <E1T8ZzV-0002vp-2j@rmk-PC.arm.linux.org.uk>
On 09/03/2012 06:59 PM, Liam Girdwood wrote:
> Use a dedicated member to store dmaengine data so that drivers can
> use private data for their own purposes.
>
The idea was that we'll eventually get to a point where we won't need private
data for the drivers using the generic dmaengine code. But for the transitional
period there is snd_dmaengine_pcm_{set,get}_data which allows to attach driver
private data to the dmaengine pcm. For an example see how the other users of
dmaengine pcm handle this.
> Signed-off-by: Liam Girdwood <lrg@ti.com>
> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
> ---
> include/sound/pcm.h | 2 ++
> sound/soc/soc-dmaengine-pcm.c | 2 +-
> 2 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/include/sound/pcm.h b/include/sound/pcm.h
> index cdca2ab..f9e4909 100644
> --- a/include/sound/pcm.h
> +++ b/include/sound/pcm.h
> @@ -269,6 +269,7 @@ struct snd_pcm_hw_constraint_list {
> };
>
> struct snd_pcm_hwptr_log;
> +struct dmaengine_pcm_runtime_data;
>
> struct snd_pcm_runtime {
> /* -- Status -- */
> @@ -345,6 +346,7 @@ struct snd_pcm_runtime {
> unsigned char *dma_area; /* DMA area */
> dma_addr_t dma_addr; /* physical bus address (not accessible from main CPU) */
> size_t dma_bytes; /* size of DMA area */
> + struct dmaengine_pcm_runtime_data *dmaengine_data;
>
> struct snd_dma_buffer *dma_buffer_p; /* allocated buffer */
>
> diff --git a/sound/soc/soc-dmaengine-pcm.c b/sound/soc/soc-dmaengine-pcm.c
> index 5df529e..27fa5ad 100644
> --- a/sound/soc/soc-dmaengine-pcm.c
> +++ b/sound/soc/soc-dmaengine-pcm.c
> @@ -40,7 +40,7 @@ struct dmaengine_pcm_runtime_data {
> static inline struct dmaengine_pcm_runtime_data *substream_to_prtd(
> const struct snd_pcm_substream *substream)
> {
> - return substream->runtime->private_data;
> + return substream->runtime->dmaengine_data;
> }
>
> /**
next prev parent reply other threads:[~2012-09-03 20:26 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-03 16:58 [RFC 0/3] Initial stab at converting OMAP ASoC support to DMA engine Russell King - ARM Linux
2012-09-03 16:58 ` Russell King - ARM Linux
2012-09-03 16:59 ` [RFC 1/3] ASoC: dmaengine: Don't use runtime private data for dmaengine data Liam Girdwood
2012-09-03 16:59 ` Liam Girdwood
2012-09-03 20:25 ` Lars-Peter Clausen [this message]
2012-09-03 20:25 ` [alsa-devel] " Lars-Peter Clausen
2012-09-03 20:43 ` Russell King - ARM Linux
2012-09-03 20:43 ` [alsa-devel] " Russell King - ARM Linux
2012-09-03 20:59 ` Lars-Peter Clausen
2012-09-03 20:59 ` [alsa-devel] " Lars-Peter Clausen
2012-09-04 13:14 ` Takashi Iwai
2012-09-04 13:14 ` Takashi Iwai
2012-09-04 13:26 ` Peter Ujfalusi
2012-09-04 13:26 ` Peter Ujfalusi
2012-09-04 18:14 ` Russell King - ARM Linux
2012-09-04 18:14 ` Russell King - ARM Linux
2012-09-03 16:59 ` [RFC 2/3] Fix "ASoC: dmaengine: Don't use runtime private data for dmaengine data" Russell King
2012-09-03 16:59 ` Russell King
2012-09-03 16:59 ` [RFC 3/3] ASoC: first stab at converting OMAP PCM driver to use dmaengine Russell King
2012-09-03 16:59 ` Russell King
2012-09-04 12:08 ` [RFC update 0/2] dmaengine/ASoC: omap: Enable element mode in cyclic DMA Peter Ujfalusi
2012-09-04 12:08 ` Peter Ujfalusi
2012-09-04 12:08 ` [RFC update 1/2] dmaengine: omap: Support for " Peter Ujfalusi
2012-09-04 12:08 ` Peter Ujfalusi
2012-09-04 12:08 ` [RFC update 2/2] ASoC: omap-pcm: Do not check DMA sync_mode Peter Ujfalusi
2012-09-04 12:08 ` Peter Ujfalusi
2012-09-04 22:37 ` [RFC update 0/2] dmaengine/ASoC: omap: Enable element mode in cyclic DMA Janusz Krzysztofik
2012-09-04 22:37 ` [alsa-devel] " Janusz Krzysztofik
2012-09-09 19:57 ` Janusz Krzysztofik
2012-09-09 19:57 ` [alsa-devel] " Janusz Krzysztofik
2012-09-10 8:21 ` Peter Ujfalusi
2012-09-10 8:21 ` [alsa-devel] " Peter Ujfalusi
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=5045124D.3050604@metafoo.de \
--to=lars@metafoo.de \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=lrg@ti.com \
--cc=santosh.shilimkar@ti.com \
--cc=tiwai@suse.de \
/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.