Merge tag 'fbdev-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux
[cascardo/linux.git] / drivers / gpu / drm / omapdrm / omap_connector.c
index 36bc5cc..a94b11f 100644 (file)
@@ -32,8 +32,16 @@ struct omap_connector {
        struct drm_connector base;
        struct omap_dss_device *dssdev;
        struct drm_encoder *encoder;
+       bool hdmi_mode;
 };
 
+bool omap_connector_get_hdmi_mode(struct drm_connector *connector)
+{
+       struct omap_connector *omap_connector = to_omap_connector(connector);
+
+       return omap_connector->hdmi_mode;
+}
+
 void copy_timings_omap_to_drm(struct drm_display_mode *mode,
                struct omap_video_timings *timings)
 {
@@ -162,10 +170,14 @@ static int omap_connector_get_modes(struct drm_connector *connector)
                        drm_mode_connector_update_edid_property(
                                        connector, edid);
                        n = drm_add_edid_modes(connector, edid);
+
+                       omap_connector->hdmi_mode =
+                               drm_detect_hdmi_monitor(edid);
                } else {
                        drm_mode_connector_update_edid_property(
                                        connector, NULL);
                }
+
                kfree(edid);
        } else {
                struct drm_display_mode *mode = drm_mode_create(dev);