]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/exynos: do not return negative values from .get_modes()
authorJani Nikula <jani.nikula@intel.com>
Fri, 8 Mar 2024 16:03:41 +0000 (18:03 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Apr 2024 13:11:26 +0000 (15:11 +0200)
[ Upstream commit 13d5b040363c7ec0ac29c2de9cf661a24a8aa531 ]

The .get_modes() hooks aren't supposed to return negative error
codes. Return 0 for no modes, whatever the reason.

Cc: Inki Dae <inki.dae@samsung.com>
Cc: Seung-Woo Kim <sw0312.kim@samsung.com>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
Cc: stable@vger.kernel.org
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/d8665f620d9c252aa7d5a4811ff6b16e773903a2.1709913674.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/exynos/exynos_drm_vidi.c
drivers/gpu/drm/exynos/exynos_hdmi.c

index f5e1adfcaa514ee0a84b00b1c7357e7d43a64ecf..fb941a8c99f0f5d9fd4bbc405a307275cb2973fa 100644 (file)
@@ -316,14 +316,14 @@ static int vidi_get_modes(struct drm_connector *connector)
         */
        if (!ctx->raw_edid) {
                DRM_DEV_DEBUG_KMS(ctx->dev, "raw_edid is null.\n");
-               return -EFAULT;
+               return 0;
        }
 
        edid_len = (1 + ctx->raw_edid->extensions) * EDID_LENGTH;
        edid = kmemdup(ctx->raw_edid, edid_len, GFP_KERNEL);
        if (!edid) {
                DRM_DEV_DEBUG_KMS(ctx->dev, "failed to allocate edid\n");
-               return -ENOMEM;
+               return 0;
        }
 
        drm_connector_update_edid_property(connector, edid);
index dd9903eab563eee8537dfb731dca112f1dd53dea..eff51bfc464407431b5d18f77e7c9d80a7a86bed 100644 (file)
@@ -887,11 +887,11 @@ static int hdmi_get_modes(struct drm_connector *connector)
        int ret;
 
        if (!hdata->ddc_adpt)
-               return -ENODEV;
+               return 0;
 
        edid = drm_get_edid(connector, hdata->ddc_adpt);
        if (!edid)
-               return -ENODEV;
+               return 0;
 
        hdata->dvi_mode = !connector->display_info.is_hdmi;
        DRM_DEV_DEBUG_KMS(hdata->dev, "%s : width[%d] x height[%d]\n",