drm/omap: poll only connectors where the connect/disconnect can be checked
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Mon, 22 Aug 2016 12:54:30 +0000 (15:54 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 3 Apr 2017 09:36:40 +0000 (12:36 +0300)
When the connector associated detect callback is not provided, we can not
detect if the display is connected or disconnected. These displays do not
support hot plug, they are always connected. Let DRM know that connectors
w/o detect callback should not be polled.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
drivers/gpu/drm/omapdrm/omap_connector.c

index f90e2d22c5ecaf09640eec2793185dd31888be71..50d2b641c28b7f4615d48e7fb6beecdd86de4f7f 100644 (file)
@@ -229,13 +229,11 @@ struct drm_connector *omap_connector_init(struct drm_device *dev,
                                connector_type);
        drm_connector_helper_add(connector, &omap_connector_helper_funcs);
 
-#if 0 /* enable when dss2 supports hotplug */
-       if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_HPD)
-               connector->polled = 0;
-       else
-#endif
+       if (dssdev->driver->detect)
                connector->polled = DRM_CONNECTOR_POLL_CONNECT |
-                               DRM_CONNECTOR_POLL_DISCONNECT;
+                                   DRM_CONNECTOR_POLL_DISCONNECT;
+       else
+               connector->polled = 0;
 
        connector->interlace_allowed = 1;
        connector->doublescan_allowed = 0;