linux-stable/sound/soc
Jarkko Nikula 97c866defc ASoC: Move widgets from DAPM context to snd_soc_card
Decoupling widgets from DAPM context is required when extending the ASoC
core to cross-device paths. Even the list of widgets are now kept in
struct snd_soc_card, the widget listing in sysfs and debugs remain sorted
per device.

This patch makes possible to build cross-device paths but does not extend
yet the DAPM to handle codec bias and widget power changes of an another
device.

Cross-device paths are registered by listing the widgets from device A in
a map for device B. In case of conflicting widget names between the devices,
a uniform name prefix is needed to separate them. See commit ead9b91
"ASoC: Add optional name_prefix for kcontrol, widget and route names" for
help.

An example below shows a path that connects MONO out of A into Line In of B:

static const struct snd_soc_dapm_route mapA[] = {
	{"MONO", NULL, "DAC"},
};

static const struct snd_soc_dapm_route mapB[] = {
	{"Line In", NULL, "MONO"},
};

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-12-15 18:01:01 +00:00
..
atmel Merge branch 'for-2.6.37' into for-2.6.38 2010-11-25 11:17:24 +00:00
au1x ASoC: Do not include soc-dapm.h 2010-11-22 14:04:41 +00:00
blackfin ASoC: Do not include soc-dapm.h 2010-11-22 14:04:41 +00:00
codecs ASoC: Move widgets from DAPM context to snd_soc_card 2010-12-15 18:01:01 +00:00
davinci Merge branch 'for-2.6.37' into for-2.6.38 2010-11-25 11:17:24 +00:00
ep93xx ASoC: EP93xx: sampling rate range extended 2010-12-09 11:10:17 +00:00
fsl ASoC: Add missing dev_set_drvdata in p1022_ds_probe 2010-11-29 18:28:53 +00:00
imx Merge branch 'for-2.6.37' into for-2.6.38 2010-11-25 11:17:24 +00:00
jz4740 ASoC: Do not include soc-dapm.h 2010-11-22 14:04:41 +00:00
kirkwood ASoC: Do not include soc-dapm.h 2010-11-22 14:04:41 +00:00
nuc900 Merge branch 'for-2.6.37' into for-2.6.38 2010-11-30 11:35:43 +00:00
omap Merge branch 'for-2.6.37' into for-2.6.38 2010-12-03 17:28:29 +00:00
pxa Merge branch 'for-2.6.37' into for-2.6.38 2010-11-25 11:17:24 +00:00
s6000 Merge branch 'for-2.6.37' into for-2.6.38 2010-11-30 11:35:43 +00:00
samsung ASoC: Add HP iPAQ H1940 support 2010-12-10 17:40:15 +00:00
sh Merge branch 'topic/workq-update' into topic/asoc 2010-12-13 09:28:43 +01:00
txx9 ASoC: multi-component - ASoC Multi-Component Support 2010-08-12 14:00:00 +01:00
Kconfig ASoC: Samsung: Rename from s3c24xx to samsung 2010-11-23 14:13:04 +00:00
Makefile ASoC: Samsung: Rename from s3c24xx to samsung 2010-11-23 14:13:04 +00:00
soc-cache.c ASoC: soc-cache: A few minor stylistic changes 2010-12-14 18:15:34 +00:00
soc-core.c ASoC: Move widgets from DAPM context to snd_soc_card 2010-12-15 18:01:01 +00:00
soc-dapm.c ASoC: Move widgets from DAPM context to snd_soc_card 2010-12-15 18:01:01 +00:00
soc-jack.c ASoC: Add trace events for jack detection 2010-12-06 14:13:42 +00:00
soc-utils.c ASoC: Add BCLK calculation utility for TDM mode too 2009-11-25 19:55:46 +00:00