linux-stable/sound/soc
Stephen Warren 1633281b79 ASoC: Implement fully_routed card property
A card is fully routed if the DAPM route table describes all connections on
the board.

When a card is fully routed, some operations can be automated by the ASoC
core. The first, and currently only, such operation is described below, and
implemented by this patch.

Codecs often have a large number of external pins, and not all of these pins
will be connected on all board designs. Some machine drivers therefore call
snd_soc_dapm_nc_pin() for all the unused pins, in order to tell the ASoC core
never to activate them.

However, when a card is fully routed, the information needed to derive the
set of unused pins is present in card->dapm_routes. In this case, have
the ASoC core automatically call snd_soc_dapm_nc_pin() for each unused
codec pin.

This has been tested with soc/tegra/tegra_wm8903.c and soc/tegra/trimslice.c.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-23 21:34:54 +00:00
..
atmel Merge branch 'for-3.2' into for-3.3 2011-11-23 11:18:32 +00:00
au1x ASoC: Cleanup duplicated const 2011-11-23 13:11:50 +00:00
blackfin ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
codecs ASoC: Remove unused variable in wm8776 driver 2011-11-23 15:33:55 +00:00
davinci ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
ep93xx ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
fsl ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
imx ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
jz4740 ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
kirkwood ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
mid-x86 sound: Add module.h to the previously silent sound users 2011-10-31 19:31:21 -04:00
mxs ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
nuc900 ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
omap ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
pxa ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
s6000 ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
samsung ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
sh ASoC: Constify snd_soc_dai_ops structs 2011-11-23 10:40:46 +00:00
tegra ASoC: Tegra I2S: Remove dependency on pdev->id 2011-11-23 21:34:48 +00:00
txx9 Merge branch 'topic/asoc' into for-linus 2011-10-27 10:43:40 +02:00
Kconfig ASoC: Remove LZO cache type 2011-11-10 13:08:09 +00:00
Makefile ASoC: mxs: add asoc configuration files 2011-07-28 11:47:41 +01:00
soc-cache.c ASoC: Remove LZO cache type 2011-11-10 13:08:09 +00:00
soc-core.c ASoC: Implement fully_routed card property 2011-11-23 21:34:54 +00:00
soc-dapm.c ASoC: Implement fully_routed card property 2011-11-23 21:34:54 +00:00
soc-io.c sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed 2011-10-31 19:31:22 -04:00
soc-jack.c sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed 2011-10-31 19:31:22 -04:00
soc-pcm.c ASoC: Remove needless unlikely() 2011-11-04 17:19:40 +00:00
soc-utils.c sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed 2011-10-31 19:31:22 -04:00