This is another step in removing legacy state.

Signed-off-by: Maarten Lankhorst <maarten.lankho...@linux.intel.com>
---
 drivers/gpu/drm/i915/intel_fbdev.c | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_fbdev.c 
b/drivers/gpu/drm/i915/intel_fbdev.c
index 09840f4380f9..97a91e631915 100644
--- a/drivers/gpu/drm/i915/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/intel_fbdev.c
@@ -406,8 +406,8 @@ retry:
                        continue;
                }
 
-               encoder = connector->encoder;
-               if (!encoder || WARN_ON(!encoder->crtc)) {
+               encoder = connector->state->best_encoder;
+               if (!encoder || WARN_ON(!connector->state->crtc)) {
                        if (connector->force > DRM_FORCE_OFF)
                                goto bail;
 
@@ -420,7 +420,7 @@ retry:
 
                num_connectors_enabled++;
 
-               new_crtc = intel_fb_helper_crtc(fb_helper, encoder->crtc);
+               new_crtc = intel_fb_helper_crtc(fb_helper, 
connector->state->crtc);
 
                /*
                 * Make sure we're not trying to drive multiple connectors
@@ -466,17 +466,22 @@ retry:
                         * usually contains. But since our current
                         * code puts a mode derived from the post-pfit timings
                         * into crtc->mode this works out correctly.
+                        *
+                        * This is crtc->mode and not crtc->state->mode for the
+                        * fastboot check to work correctly. crtc_state->mode 
has
+                        * I915_MODE_FLAG_INHERITED, which we clear to force 
check
+                        * state.
                         */
                        DRM_DEBUG_KMS("looking for current mode on connector 
%s\n",
                                      connector->name);
-                       modes[i] = &encoder->crtc->mode;
+                       modes[i] = &connector->state->crtc->mode;
                }
                crtcs[i] = new_crtc;
 
                DRM_DEBUG_KMS("connector %s on pipe %c [CRTC:%d]: %dx%d%s\n",
                              connector->name,
-                             pipe_name(to_intel_crtc(encoder->crtc)->pipe),
-                             encoder->crtc->base.id,
+                             
pipe_name(to_intel_crtc(connector->state->crtc)->pipe),
+                             connector->state->crtc->base.id,
                              modes[i]->hdisplay, modes[i]->vdisplay,
                              modes[i]->flags & DRM_MODE_FLAG_INTERLACE ? "i" 
:"");
 
-- 
2.1.0

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

Reply via email to