From: Lars-Peter Clausen <lars@metafoo.de>
To: Mark Brown <broonie@kernel.org>
Cc: Linux-ALSA <alsa-devel@alsa-project.org>,
Russell King <linux@arm.linux.org.uk>,
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>,
Liam Girdwood <lgirdwood@gmail.com>, Simon <horms@verge.net.au>,
Kuninori Morimoto <kuninori.morimoto.gx@gmail.com>
Subject: Re: [PATCH 0/27]: ASoC: rsnd: add Renesas Gen2 DMAEngine support
Date: Tue, 28 Jan 2014 13:06:29 +0100 [thread overview]
Message-ID: <52E79D45.5090301@metafoo.de> (raw)
In-Reply-To: <20140128113429.GK11841@sirena.org.uk>
On 01/28/2014 12:34 PM, Mark Brown wrote:
> On Tue, Jan 28, 2014 at 08:35:49AM +0100, Lars-Peter Clausen wrote:
>
>> I still think the emulation of the transfers is better done in the
>> DMA driver rather than in the audio driver. The DMA driver has much
>> more state information available than the audio driver, which should
>> make the implementation on one hand simpler and on the other hand
>> more reliable.
>
> On the other hand it's a problem that several devices have so we should
> be able to factor out the interface matching so it should have at least
> some of the code in one of the frameworks, dmaengine would seem natural
> too me too but apparently audio is about the only user of cyclic DMA so
> IIRC the DMA guys were pushing back on doing it there.
>
The virt_dma helper functions already take care of some of the cyclic
specific details. And more can probably be added. E.g. what comes to mind is
the tracking of whether a descriptor is cyclic and which segment of the
descriptor to submit next. All users of virt_dma already implement these in
almost the same fashion. So this would not only to allow to factor out the
handling for the cyclic case, but also for the non cyclic case. And for all
users of those helpers cyclic support would essentially be free.
- Lars
next prev parent reply other threads:[~2014-01-28 12:06 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-24 2:36 [PATCH 0/27]: ASoC: rsnd: add Renesas Gen2 DMAEngine support Kuninori Morimoto
2014-01-24 2:37 ` [PATCH 01/27] ASoC: rsnd: tidyup register naming of BUSIF_MODE Kuninori Morimoto
2014-01-24 2:38 ` [PATCH 02/27] ASoC: rsnd: cleanup debug information method Kuninori Morimoto
2014-01-24 2:38 ` [PATCH 03/27] ASoC: rsnd: remove meaningless rsnd_ssi_non() Kuninori Morimoto
2014-01-24 2:38 ` [PATCH 04/27] ASoC: rsnd: control SCU ops in probe timing Kuninori Morimoto
2014-01-24 2:38 ` [PATCH 05/27] ASoC: rsnd: add rsnd_scu_init(), and separate init/start Kuninori Morimoto
2014-01-24 2:38 ` [PATCH 06/27] ASoC: rsnd: remove meaningless function parameter Kuninori Morimoto
2014-01-24 2:38 ` [PATCH 07/27] ASoC: rsnd: merge rsnd_scu_start/stop() and rsnd_scu_transfer_start/stop() Kuninori Morimoto
2014-01-24 2:39 ` [PATCH 08/27] ASoC: rsnd: rsnd_dai_is_clk_master() can be shared Kuninori Morimoto
2014-01-24 2:39 ` [PATCH 09/27] ASoC: rsnd: remove pin sync option Kuninori Morimoto
2014-01-24 2:39 ` [PATCH 10/27] ASoC: rsnd: SSI_MODE0/1 settings goes to scu.c Kuninori Morimoto
2014-01-24 2:39 ` [PATCH 11/27] ASoC: rsnd: remove ssiu from ssi.c Kuninori Morimoto
2014-01-24 2:39 ` [PATCH 12/27] ASoC: rsnd: rename rsnd_scu_convert_rate_ctrl() Kuninori Morimoto
2014-01-24 2:39 ` [PATCH 13/27] ASoC: rsnd: explain SRC bypass mode settings in comment Kuninori Morimoto
2014-01-27 19:45 ` Mark Brown
2014-01-28 0:28 ` Kuninori Morimoto
2014-01-28 11:14 ` Mark Brown
2014-01-24 2:40 ` [PATCH 14/27] ASoC: rsnd: remove duplicate *priv from rsnd_dma Kuninori Morimoto
2014-01-24 2:40 ` [PATCH 15/27] ASoC: rsnd: non 0 is error on probe Kuninori Morimoto
2014-01-24 2:40 ` [PATCH 16/27] ASoC: rsnd: fixup Gen2 module naming Kuninori Morimoto
2014-01-24 2:40 ` [PATCH 17/27] ASoC: rsnd: don't use schedule_work() when rsnd_dma_start() Kuninori Morimoto
2014-01-24 2:40 ` [PATCH 18/27] ASoC: rsnd: SCU should be called before SSI Kuninori Morimoto
2014-01-24 2:40 ` [PATCH 19/27] ASoC: rsnd: clarify scu.c area Kuninori Morimoto
2014-01-24 2:40 ` [PATCH 20/27] ASoC: rsnd: Merge macros in scu.c Kuninori Morimoto
2014-01-24 2:40 ` [PATCH 21/27] ASoC: rsnd: rsnd_scu_hpbif_is_enable() become macro Kuninori Morimoto
2014-01-24 2:41 ` [PATCH 22/27] ASoC: rsnd: merge SRC clock timing/setting Kuninori Morimoto
2014-01-24 2:41 ` [PATCH 23/27] ASoC: rsnd: add rsnd_ssi_is_play() Kuninori Morimoto
2014-01-24 2:41 ` [PATCH 24/27] ASoC: rsnd: extracts Gen1/Gen2 common parts Kuninori Morimoto
2014-01-24 2:41 ` [PATCH 25/27] ASoC: rsnd: remove SSI dependent DMAEngine callback Kuninori Morimoto
2014-01-24 2:41 ` [PATCH 26/27] ASoC: rsnd: rsnd_ssi_probe() goes forwarder than rsnd_scu_probe() Kuninori Morimoto
2014-01-24 2:42 ` [PATCH 27/27] ASoC: rsnd: add Gen2 SRC and DMAEngine support Kuninori Morimoto
2014-01-27 17:50 ` [PATCH 0/27]: ASoC: rsnd: add Renesas Gen2 " Ben Dooks
2014-01-28 0:34 ` Kuninori Morimoto
2014-01-28 0:58 ` Kuninori Morimoto
2014-01-27 19:49 ` Mark Brown
2014-01-28 0:30 ` Kuninori Morimoto
2014-01-28 7:35 ` Lars-Peter Clausen
2014-01-28 11:34 ` Mark Brown
2014-01-28 12:06 ` Lars-Peter Clausen [this message]
2014-01-28 12:37 ` Mark Brown
2014-01-28 13:05 ` Russell King - ARM Linux
2014-01-28 13:20 ` Lars-Peter Clausen
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=52E79D45.5090301@metafoo.de \
--to=lars@metafoo.de \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=horms@verge.net.au \
--cc=kuninori.morimoto.gx@gmail.com \
--cc=kuninori.morimoto.gx@renesas.com \
--cc=lgirdwood@gmail.com \
--cc=linux@arm.linux.org.uk \
/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.