drm/exynos/hdmi: Don't print error on deferral due to regulators 75/93975/5 accepted/tizen/common/20161117.085224 accepted/tizen/ivi/20161117.010705 accepted/tizen/mobile/20161117.010610 accepted/tizen/tv/20161117.010631 accepted/tizen/wearable/20161117.010651 submit/tizen/20161116.232344
authorJavier Martinez Canillas <javier@osg.samsung.com>
Thu, 21 Apr 2016 18:51:38 +0000 (14:51 -0400)
committerInki Dae <inki.dae@samsung.com>
Wed, 16 Nov 2016 23:12:19 +0000 (15:12 -0800)
The regulators may not be available just because their driver's probe
function was just not executed and so the regulators not registered.

So, in this case the Exynos HDMI driver should not print logs since
a -EPROBE_DEFER is not really an error and that will just pollute
the kernel log and confuse users.

This patch prevents the following misleading messages to be printed:

[    1.443638] [drm:hdmi_probe] *ERROR* failed to get regulators
[    1.449326] [drm:hdmi_probe] *ERROR* hdmi_resources_init failed

Change-Id: Ib23cf62b86f9aacb6e23b64b7716a77d96da83f8
Reported-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
drivers/gpu/drm/exynos/exynos_hdmi.c

index 1520714a0e2a3205cc2e67469f5d9db609872850..9bc93b5c93aa28ba277e614e72a4622a5b3854ef 100644 (file)
@@ -1809,7 +1809,8 @@ static int hdmi_resources_init(struct hdmi_context *hdata)
 
        ret = devm_regulator_bulk_get(dev, ARRAY_SIZE(supply), hdata->regul_bulk);
        if (ret) {
-               DRM_ERROR("failed to get regulators\n");
+               if (ret != -EPROBE_DEFER)
+                       DRM_ERROR("failed to get regulators\n");
                return ret;
        }
 
@@ -1962,7 +1963,8 @@ static int hdmi_probe(struct platform_device *pdev)
 
        ret = hdmi_resources_init(hdata);
        if (ret) {
-               DRM_ERROR("hdmi_resources_init failed\n");
+               if (ret != -EPROBE_DEFER)
+                       DRM_ERROR("hdmi_resources_init failed\n");
                return ret;
        }