The DVO connector is tag as disconnect because of a wrong management
of the panel detection.

Signed-off-by: Vincent Abriou <vincent.abriou at st.com>
---
 drivers/gpu/drm/sti/sti_dvo.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c
index 45cbe2b..9e90b74 100644
--- a/drivers/gpu/drm/sti/sti_dvo.c
+++ b/drivers/gpu/drm/sti/sti_dvo.c
@@ -345,12 +345,14 @@ sti_dvo_connector_detect(struct drm_connector *connector, 
bool force)

        DRM_DEBUG_DRIVER("\n");

-       if (!dvo->panel)
+       if (!dvo->panel) {
                dvo->panel = of_drm_find_panel(dvo->panel_node);
+               if (dvo->panel)
+                       drm_panel_attach(dvo->panel, connector);
+       }

        if (dvo->panel)
-               if (!drm_panel_attach(dvo->panel, connector))
-                       return connector_status_connected;
+               return connector_status_connected;

        return connector_status_disconnected;
 }
-- 
1.9.1

Reply via email to