alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
* [RFC i-iv] ASoC: Add support for cross-device paths without dai and without name collision
@ 2010-10-29 12:00 Jarkko Nikula
  2010-10-29 12:00 ` [RFC_i/iv 1/3] ASoC: Decouple DAPM from CODECs. Part core (will be squashed) Jarkko Nikula
                   ` (2 more replies)
  0 siblings, 3 replies; 17+ messages in thread
From: Jarkko Nikula @ 2010-10-29 12:00 UTC (permalink / raw)
  To: alsa-devel; +Cc: Mark Brown, Liam Girdwood

Hi

I'm sending here four set of patches that are build on top of another. They
are trying to solve issues with following setup:

CPU <-> [Codec x.0] -> [Codec x.1] -> out

Here only Codec x.0 has DAI link between codec and CPU, Codec x.1 is used as
an amplifier and the same codec driver is used for both codec instances.

Currently this setup is not possible because ASoC doesn't support cross-device
paths, i.e. DAPM is per codec, there is no support to register dailess codecs
and no resolution for name collisions that would occur when multiple codec
instances tries to register same kcontrols and when trying to build paths
between widgets.

I've separated patches to these problems to separate sets so that reviewing
would be easier. However, they depend on previous sets so they must be applied
sequentially and thus each set is named as RFC_[i-iv]/iv.

I've based this work on of top of Liam's DAPM decoupling patches. Those must
be squashed together but I'm sending here them separately because they include
core change from Liam and trivial conversions and minor fixes from me.

i	Decoupling DAPM from codecs. Core implementation from Liam Girdwood
	and some minor bits from me, conversion of new codecs and all the
	platforms. I've build tested the codecs and OMAP platforms and if some
	platform doesn't build, it's my fault.
ii	Extend ASoC core to handle cross-device paths. Decoupling paths and
	widgets from DAPM context and handling cross-device bias and widget
	power changes.
iii	Support for dailess codecs. This is achieved by renaming dai_link as
	dev_map, i.e. the former struct snd_soc_dai_link becomes
	struct snd_soc_dev_map so it does not only describe platform, cpu dai
	and codec binding but also registration of dailess codecs.
iv	Optional name_prefix to struct snd_soc_dev_map. With this a machine
	driver can specify a name that is used to prefix codec kcontrols,
	widgets and internal route names for avoiding name collision that would
	occur if multiple codec instances are registered.


-- 
Jarkko

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2010-11-05 14:02 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-29 12:00 [RFC i-iv] ASoC: Add support for cross-device paths without dai and without name collision Jarkko Nikula
2010-10-29 12:00 ` [RFC_i/iv 1/3] ASoC: Decouple DAPM from CODECs. Part core (will be squashed) Jarkko Nikula
2010-10-29 20:04   ` Mark Brown
2010-10-30 18:01     ` Liam Girdwood
2010-10-31 18:13       ` Jarkko Nikula
2010-11-01 13:13       ` Mark Brown
2010-11-04 12:38         ` [PATCH] ASoC: Decouple DAPM from CODECs Jarkko Nikula
2010-11-05  3:29           ` Mark Brown
2010-11-05  7:20             ` Jarkko Nikula
2010-11-05 13:38               ` Mark Brown
2010-11-05 13:53                 ` Jarkko Nikula
2010-11-05 14:02                   ` Mark Brown
     [not found] ` <1288353618-21753-3-git-send-email-jhnikula@gmail.com>
2010-10-29 13:45   ` [RFC_i/iv 2/3] ASoC: Decouple DAPM from CODECs. Part codecs (will be squashed) Jarkko Nikula
2010-10-29 20:45   ` Mark Brown
     [not found] ` <1288353618-21753-4-git-send-email-jhnikula@gmail.com>
2010-10-29 20:47   ` [RFC_i/iv 3/3] ASoC: Decouple DAPM from CODECs. Part platforms " Mark Brown
2010-10-31 18:11     ` Jarkko Nikula
2010-11-01 13:14       ` Mark Brown

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).