drm/bridge: dw-hdmi: Return number of EDID modes
authorDoug Anderson <dianders@chromium.org>
Thu, 4 Jun 2015 18:04:36 +0000 (11:04 -0700)
committerThierry Reding <treding@nvidia.com>
Fri, 5 Jun 2015 11:46:12 +0000 (13:46 +0200)
The dw_hdmi_connector_get_modes() function accidentally forgets to
return the number of modes it added, although it has this information
stored in a local variable.  Let's fix that.

Without this fix, drm_helper_probe_single_connector_modes_merge_bits()
could get confused and always call drm_add_modes_noedid().  That's not
right.

Signed-off-by: Doug Anderson <dianders@chromium.org>
Tested-by: Yakir Yang <ykk@rock-chips.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/bridge/dw_hdmi.c

index 594f84c763cfa1a3beb798e6d46ed399606907f9..816d104ca4da94adadef8dcafb68e92c39a34bb6 100644 (file)
@@ -1395,7 +1395,7 @@ static int dw_hdmi_connector_get_modes(struct drm_connector *connector)
        struct dw_hdmi *hdmi = container_of(connector, struct dw_hdmi,
                                             connector);
        struct edid *edid;
-       int ret;
+       int ret = 0;
 
        if (!hdmi->ddc)
                return 0;
@@ -1412,7 +1412,7 @@ static int dw_hdmi_connector_get_modes(struct drm_connector *connector)
                dev_dbg(hdmi->dev, "failed to get edid\n");
        }
 
-       return 0;
+       return ret;
 }
 
 static enum drm_mode_status