ASoC: sgtl5000: defer the probe if clock is not found
authorShawn Guo <shawn.guo@linaro.org>
Tue, 16 Jul 2013 01:17:27 +0000 (09:17 +0800)
committerMark Brown <broonie@linaro.org>
Tue, 16 Jul 2013 17:52:03 +0000 (18:52 +0100)
commit46a5905e1cd4a9d9d238ec7beece49ce49e2ad85
tree8a239d6b22ae23341911ed821e352cad9b7a9846
parent5c78dfe87ea04b501ee000a7f03b9432ac9d008c
ASoC: sgtl5000: defer the probe if clock is not found

It's not always the case that clock is already available when sgtl5000
get probed at the first time, e.g. the clock is provided by CPU DAI
which may be probed after sgtl5000.  So let's defer the probe when
devm_clk_get() call fails and give it chance to try later.

It fixes the regression on imx28 since commit 9e13f34 (ASoC: sgtl5000:
Let the codec acquire its clock).

[    1.927637] sgtl5000 0-000a: Failed to get mclock: -2
[    1.934280] sgtl5000: probe of 0-000a failed with error -2
[    1.945906] mxs-sgtl5000 sound.13: ASoC: CODEC (null) not registered
[    1.953787] mxs-sgtl5000 sound.13: snd_soc_register_card failed (-517)
[    1.960865] platform sound.13: Driver mxs-sgtl5000 requests probe deferral

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/codecs/sgtl5000.c