If the ssi or codec driver is not yet loaded by the time of imx-wm8962 driver probing, this probe should be deferred until the dependent drivers loading. Return -EPROBE_DEFER in this case.
Signed-off-by: Andrew Gabbasov andrew_gabbasov@mentor.com --- sound/soc/fsl/imx-wm8962.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/soc/fsl/imx-wm8962.c b/sound/soc/fsl/imx-wm8962.c index 722afe6..9e60aa8 100644 --- a/sound/soc/fsl/imx-wm8962.c +++ b/sound/soc/fsl/imx-wm8962.c @@ -211,13 +211,13 @@ static int imx_wm8962_probe(struct platform_device *pdev) ssi_pdev = of_find_device_by_node(ssi_np); if (!ssi_pdev) { dev_err(&pdev->dev, "failed to find SSI platform device\n"); - ret = -EINVAL; + ret = -EPROBE_DEFER; goto fail; } codec_dev = of_find_i2c_device_by_node(codec_np); if (!codec_dev || !codec_dev->driver) { dev_err(&pdev->dev, "failed to find codec platform device\n"); - ret = -EINVAL; + ret = -EPROBE_DEFER; goto fail; }