ASoC: core: On resume also check the soc device state
Check the card->codec on soc_resume to detect if the soc device is properly initialized. If the card->codec is NULL, than do not continue the resume operation, since the device is not initialized properly. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
6c5f1fed49
commit
b9dd94a87e
|
@ -963,6 +963,12 @@ static int soc_resume(struct device *dev)
|
||||||
struct snd_soc_card *card = socdev->card;
|
struct snd_soc_card *card = socdev->card;
|
||||||
struct snd_soc_dai *cpu_dai = card->dai_link[0].cpu_dai;
|
struct snd_soc_dai *cpu_dai = card->dai_link[0].cpu_dai;
|
||||||
|
|
||||||
|
/* If the initialization of this soc device failed, there is no codec
|
||||||
|
* associated with it. Just bail out in this case.
|
||||||
|
*/
|
||||||
|
if (!card->codec)
|
||||||
|
return 0;
|
||||||
|
|
||||||
/* AC97 devices might have other drivers hanging off them so
|
/* AC97 devices might have other drivers hanging off them so
|
||||||
* need to resume immediately. Other drivers don't have that
|
* need to resume immediately. Other drivers don't have that
|
||||||
* problem and may take a substantial amount of time to resume
|
* problem and may take a substantial amount of time to resume
|
||||||
|
|
Loading…
Reference in New Issue