]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit - sound/soc/soc-core.c
ASoC: core: Use driver core probe deferral
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Wed, 14 Mar 2012 21:18:39 +0000 (21:18 +0000)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sun, 1 Apr 2012 10:28:23 +0000 (11:28 +0100)
commitb19e6e7b763c7144bfe2ceccf988b64d66d6dd0a
treec80e0ad8c6f7f3d857345f7016627e7bb168ac76
parent2667b4b8bef8598917adb1b4af46ed2b7d4fa0d7
ASoC: core: Use driver core probe deferral

In version 3.4 the driver core acquired probe deferral which is a core way
of doing essentially the same thing as ASoC has been doing since forever
to make sure that all the devices needed to make up the card are present
without needing open coding in the subsystem.

Make basic use of this probe deferral mechanism for the cards, removing the
need to handle partially instantiated cards. We should be able to remove
even more code than this, though some of the checks we're currently doing
should stay since they're about things like suppressing unneeded DAPM runs
rather than deferring probes.

In order to avoid robustness issues with our teardown paths (which do need
quite a bit of TLC) add a check for aux_devs prior to attempting to set
things up, this means that we've got a reasonable idea that everything will
be there before we start. As with the removal of partial instantiation
support more work will be needed to make this work neatly.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
include/sound/soc.h
sound/soc/soc-core.c