From: Wan ZongShun <mcuos.com@gmail.com>
To: Liam Girdwood <lrg@slimlogic.co.uk>
Cc: vbarinov <vbarinov@embeddedalley.com>,
alsa-devel <alsa-devel@alsa-project.org>,
jassisinghbrar <jassisinghbrar@gmail.com>,
Sascha Hauer <s.hauer@pengutronix.de>,
Mark Brown <broonie@opensource.wolfsonmicro.com>,
Peter Ujfalusi <peter.ujfalusi@nokia.com>,
Cliff Cai <cliff.cai@analog.com>,
Haojian Zhuang <haojian.zhuang@gmail.com>,
Sedji Gaouaou <sedji.gaouaou@atmel.com>,
"timur.tabi@gmail.com" <timur.tabi@gmail.com>,
Lars-Peter Clausen <lars@metafoo.de>,
"Candelaria Villareal, Jorge" <jorge.candelaria@ti.com>,
"vaibhav.bedia" <vaibhav.bedia@ti.com>,
Kuninori Morimoto <morimoto.kuninori@renesas.com>,
Ryan Mallon <ryan@bluewatersys.com>
Subject: Re: [RFC 0/5] ASoC multi-component support : core
Date: Sat, 26 Jun 2010 10:25:50 +0800 [thread overview]
Message-ID: <AANLkTimfC5rdr8r0Ll4GM7d_8WapNR3Tkk9_r-Vo3aeB@mail.gmail.com> (raw)
In-Reply-To: <1277407467.3100.579.camel@odin>
2010/6/25 Liam Girdwood <lrg@slimlogic.co.uk>:
> ASoC is now coming up to it's 5th birthday and is beginning to show it's
> age a little when it comes to supporting the next generation of smart
> phones and multimedia devices with it's current single CODEC and single
> DMA platform design.
>
> Historically, ASoC is designed around an embedded sound card with a
> single CODEC and a single platform DMA driver (with multiple DAIs). This
> design works great for most of the current audio hardware in production,
> however we are now seeing hardware designs for the next generation of
> devices that can have many CODECs, DMAs, DSPs and a host of other audio
> peripherals connected to the audio subsystem.
>
> So we now need ASoC to support new audio hardware architectures with
> multiple audio CODECs, DMA engines, DSPs, DAIs etc.
>
>
>
> This patch series allows an ASoC sound card to support multiple
> components (CODECs, DAI and DMA) and is the first part in a series of
> work (other parts coming later in the year from Mark and I) designed to
> enhance ASoC for modern mobile audio hardware.
>
> This patch series provides the following important features:-
>
> 1) Allow sound cards to have multiple CODECs and platform DMA controllers.
> 2) Allow CODEC drivers to support more than one CODEC device.
> 3) Allow all CODEC, platform DMA and DAI drivers to have platform data.
>
> This is achieved by: -
>
> 1) Separating the component struct driver data from the component struct device data.
> 2) Making all components kernel devices.
>
> (A side effect of this change is that we can now store all our component
> private data in struct device private data (like everyone else) and
> there is also now less pointer indirection for components.)
>
> The change mainly affects only the probe() and remove() sections of
> component drivers and the component enumeration section of the core. The
> core also now handles setting up the CODEC data structs too (meaning
> CODEC drivers dont have to do this). All component PCM, DAPM and
> Kcontrol operations remain unchanged.
>
>
>
> I've so far tested the new multi-component enumeration on the TI OMAP
> and Marvell PXA platforms with AC97, MFD and I2C based CODECs. I do
> however need ASoC platform maintainers to test on their systems (as I
> only have a subset of the hardware). Some ASOC platforms do need a
> little extra checking/fixups too :-
>
> o Samsung platform: required the most work to untangle the components.
> o i.MX platform: required work to de-couple components.
> o Injenic J4740 platform: I do not have a toolchain to even build this
> arch so it will also need someone to build it too.
>
> If you find your platform does not work then the most likely reason is
> that I'm missing a platform_device registration for your CODEC, DAI,
> etc. device in your arch board.c or device.c files. Please let me know
> or send a patch :)
>
> All the multi-component code is in my multi-component branch here :-
>
> git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6.git
>
I really want to test my nuc900 platform, but the git tree seems to
base linux-2.6.31,
where nuc900 most platform files not be merged. so I have to wait for
2.6.36 to update and test my driver?
> This RFC post contains the changes to ASoC core only. I'll post the
> multi-component CODEC and platform changes as separate RFCs in order not
> to flood the list (as there are 38 patches in all). This patch series
> will eventually be rebased into a single patch for upstream so we dont
> break bisect. The subsequent patches for CODECs and platforms in this
> series can be found in the git branch above.
>
> The intention is to upstream this for 2.6.36
>
> Thanks
>
> Liam
> --
> Freelance Developer, SlimLogic Ltd
> ASoC and Voltage Regulator Maintainer.
> http://www.slimlogic.co.uk
>
>
--
*linux-arm-kernel mailing list
mail addr:linux-arm-kernel@lists.infradead.org
you can subscribe by:
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
* linux-arm-NUC900 mailing list
mail addr:NUC900@googlegroups.com
main web: https://groups.google.com/group/NUC900
you can subscribe it by sending me mail:
mcuos.com@gmail.com
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
next prev parent reply other threads:[~2010-06-26 2:25 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-24 19:24 [RFC 0/5] ASoC multi-component support : core Liam Girdwood
2010-06-24 21:36 ` Ryan Mallon
2010-06-24 23:12 ` Mark Brown
2010-06-24 23:38 ` Ryan Mallon
2010-06-25 4:51 ` Ryan Mallon
2010-06-25 8:37 ` Liam Girdwood
2010-06-25 22:38 ` Ryan Mallon
2010-06-26 17:52 ` Liam Girdwood
2010-06-26 2:25 ` Wan ZongShun [this message]
2010-06-26 17:29 ` Liam Girdwood
2010-06-28 7:16 ` Jarkko Nikula
2010-07-01 19:35 ` Mark Brown
2010-07-01 19:55 ` [PATCH] ASoC: Use bool rather than 1 bit bitfield in multi-component Mark Brown
2010-07-05 21:10 ` Liam Girdwood
2010-07-01 20:01 ` [RFC 0/5] ASoC multi-component support : core Mark Brown
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=AANLkTimfC5rdr8r0Ll4GM7d_8WapNR3Tkk9_r-Vo3aeB@mail.gmail.com \
--to=mcuos.com@gmail.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=cliff.cai@analog.com \
--cc=haojian.zhuang@gmail.com \
--cc=jassisinghbrar@gmail.com \
--cc=jorge.candelaria@ti.com \
--cc=lars@metafoo.de \
--cc=lrg@slimlogic.co.uk \
--cc=morimoto.kuninori@renesas.com \
--cc=peter.ujfalusi@nokia.com \
--cc=ryan@bluewatersys.com \
--cc=s.hauer@pengutronix.de \
--cc=sedji.gaouaou@atmel.com \
--cc=timur.tabi@gmail.com \
--cc=vaibhav.bedia@ti.com \
--cc=vbarinov@embeddedalley.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).