android_kernel_motorola_sm6225/sound
Lars-Peter Clausen 86d7500326 ASoC: dapm: Simplify fully route card handling
For legacy reasons the ASoC framework assumes that a CODEC INPUT or OUTPUT
widget that is not explicitly connected to a external source or sink is
potentially connected to a source or a sink and hence the framework treats
the widget itself as source (for INPUT) or sink (for OUTPUT). For this
reason a INPUT or OUTPUT widget that is really not connected needs to be
explicitly marked as so.

Setting the card's fully_routed flag will cause the ASoC core, once that all
widgets and routes have been registered, to go through the list of all
widgets and mark all INPUT and OUTPUT that are not externally connected as
non-connected. This essentially negates the default behaviour of treating
INPUT or OUTPUT widgets without external routes as sources or sinks.

This patch takes a different approach while getting the same result. Instead
of first marking INPUT and OUTPUT widgets as sinks/sources and then later
marking them as non-connected, just never mark them as a sink or a source if
the fully_routed flag is set on a card.

This requires a lot less code and also results in a slightly faster card
initialization since there is no need to iterate over all widgets and check
whether the INPUT and OUTPUT widgets are connected or not.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
2014-12-22 12:44:59 +00:00
..
aoa ALSA: i2sbus: Deletion of unnecessary checks before the function call "release_and_free_resource" 2014-12-03 07:59:04 +01:00
arm Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
atmel Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
core Merge branch 'for-linus' into for-next 2014-11-28 18:30:19 +01:00
drivers Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
firewire ALSA: oxfw: some signedness bugs 2014-12-15 10:03:21 +01:00
i2c ALSA: ak4xxx-adda: Use snd_ctl_enum_info() 2014-10-21 08:29:54 +02:00
isa ALSA: sb: Deletion of unnecessary checks before two function calls 2014-11-21 20:07:36 +01:00
mips Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
oss Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
parisc ALSA: parisc: Use snd_ctl_enum_info() 2014-10-21 08:37:36 +02:00
pci sound fixes for 3.19-rc1 2014-12-19 18:07:17 -08:00
pcmcia ALSA: vx: Fix missing kerneldoc parameter descriptions 2014-11-11 09:39:10 +01:00
ppc Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
sh ALSA: sh: drop owner assignment from platform_drivers 2014-10-20 16:22:02 +02:00
soc ASoC: dapm: Simplify fully route card handling 2014-12-22 12:44:59 +00:00
sparc Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
spi
synth
usb sound fixes for 3.19-rc1 2014-12-19 18:07:17 -08:00
ac97_bus.c
Kconfig
last.c
Makefile
sound_core.c
sound_firmware.c