Now that set_mode also disables crtcs and expects it's new
configuration in the staged output links we need to adjust the load
detect code a bit.

Signed-Off-by: Daniel Vetter <daniel.vet...@ffwll.ch>
---
 drivers/gpu/drm/i915/intel_display.c |   13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c 
b/drivers/gpu/drm/i915/intel_display.c
index b293d38..6166708 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -5724,8 +5724,8 @@ bool intel_get_load_detect_pipe(struct intel_encoder 
*intel_encoder,
                return false;
        }
 
-       encoder->crtc = crtc;
-       connector->encoder = encoder;
+       intel_encoder->new_crtc = to_intel_crtc(crtc);
+       to_intel_connector(connector)->new_encoder = intel_encoder;
 
        intel_crtc = to_intel_crtc(crtc);
        old->dpms_mode = connector->dpms;
@@ -5776,16 +5776,17 @@ void intel_release_load_detect_pipe(struct 
intel_encoder *intel_encoder,
                                    struct intel_load_detect_pipe *old)
 {
        struct drm_encoder *encoder = &intel_encoder->base;
-       struct drm_device *dev = encoder->dev;
 
        DRM_DEBUG_KMS("[CONNECTOR:%d:%s], [ENCODER:%d:%s]\n",
                      connector->base.id, drm_get_connector_name(connector),
                      encoder->base.id, drm_get_encoder_name(encoder));
 
        if (old->load_detect_temp) {
-               connector->encoder = NULL;
-               encoder->crtc = NULL;
-               drm_helper_disable_unused_functions(dev);
+               struct drm_crtc *crtc = encoder->crtc;
+
+               to_intel_connector(connector)->new_encoder = NULL;
+               intel_encoder->new_crtc = NULL;
+               intel_set_mode(crtc, NULL, 0, 0, NULL);
 
                if (old->release_fb)
                        old->release_fb->funcs->destroy(old->release_fb);
-- 
1.7.10.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to