If the snd_soc_register_card() fails due a missing resource and the probe has to be deferred, the driver prints an error message.
But since many probe retries can happen before a resource is available, the printed messages can spam the kernel log buffer and slow the boot.
The information is useful to know that a dependency was not meet and a defer happened, but isn't necessary to print it on each probe deferral.
Signed-off-by: Javier Martinez Canillas javier@osg.samsung.com
---
sound/soc/samsung/snow.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/sound/soc/samsung/snow.c b/sound/soc/samsung/snow.c index d8ac907bbb0d..068bfb78a668 100644 --- a/sound/soc/samsung/snow.c +++ b/sound/soc/samsung/snow.c @@ -103,7 +103,13 @@ static int snow_probe(struct platform_device *pdev)
ret = devm_snd_soc_register_card(&pdev->dev, card); if (ret) { - dev_err(&pdev->dev, "snd_soc_register_card failed (%d)\n", ret); + if (ret == -EPROBE_DEFER) + dev_err_once(&pdev->dev, + "snd_soc_register_card deferred (%d)\n", + ret); + else + dev_err(&pdev->dev, + "snd_soc_register_card failed (%d)\n", ret); return ret; }