drm/i915: Eliminate some encoder->crtc usage from TV code
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 31 Oct 2017 20:51:17 +0000 (22:51 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 9 Nov 2017 18:04:56 +0000 (20:04 +0200)
Extract the current crtc from the crtc state rather than via
the legacy encoder->crtc pointer whenever possible.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171031205123.13123-5-ville.syrjala@linux.intel.com
Acked-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
drivers/gpu/drm/i915/intel_tv.c

index b18609cebe035d0cb3c46b262f944497018b3c6e..b3dabc219e6a12ae04a1977723a581cc0c4c4bb3 100644 (file)
@@ -822,7 +822,7 @@ intel_enable_tv(struct intel_encoder *encoder,
 
        /* Prevents vblank waits from timing out in intel_tv_detect_type() */
        intel_wait_for_vblank(dev_priv,
-                             to_intel_crtc(encoder->base.crtc)->pipe);
+                             to_intel_crtc(pipe_config->base.crtc)->pipe);
 
        I915_WRITE(TV_CTL, I915_READ(TV_CTL) | TV_ENC_ENABLE);
 }
@@ -982,7 +982,7 @@ static void intel_tv_pre_enable(struct intel_encoder *encoder,
                                const struct drm_connector_state *conn_state)
 {
        struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-       struct intel_crtc *intel_crtc = to_intel_crtc(encoder->base.crtc);
+       struct intel_crtc *intel_crtc = to_intel_crtc(pipe_config->base.crtc);
        struct intel_tv *intel_tv = enc_to_tv(encoder);
        const struct tv_mode *tv_mode = intel_tv_mode_find(conn_state);
        u32 tv_ctl;