OSDN Git Service

drm/i915/display: use common function for checking scanline is moving
authorJani Nikula <jani.nikula@intel.com>
Mon, 16 Jan 2023 12:56:14 +0000 (14:56 +0200)
committerJani Nikula <jani.nikula@intel.com>
Wed, 18 Jan 2023 09:05:58 +0000 (11:05 +0200)
cpt_verify_modeset() is roughly the same as
intel_wait_for_pipe_scanline_moving(). Assume it's close enough.

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/bf26763caaad25f3dfcf6f8e468421f93fb99646.1673873708.git.jani.nikula@intel.com
drivers/gpu/drm/i915/display/intel_display.c

index b5c0ab0..9b73663 100644 (file)
@@ -1060,22 +1060,6 @@ intel_get_crtc_new_encoder(const struct intel_atomic_state *state,
        return encoder;
 }
 
-static void cpt_verify_modeset(struct drm_i915_private *dev_priv,
-                              enum pipe pipe)
-{
-       i915_reg_t dslreg = PIPEDSL(pipe);
-       u32 temp;
-
-       temp = intel_de_read(dev_priv, dslreg);
-       udelay(500);
-       if (wait_for(intel_de_read(dev_priv, dslreg) != temp, 5)) {
-               if (wait_for(intel_de_read(dev_priv, dslreg) != temp, 5))
-                       drm_err(&dev_priv->drm,
-                               "mode set failed: pipe %c stuck\n",
-                               pipe_name(pipe));
-       }
-}
-
 static void ilk_pfit_enable(const struct intel_crtc_state *crtc_state)
 {
        struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
@@ -1770,7 +1754,7 @@ static void ilk_crtc_enable(struct intel_atomic_state *state,
        intel_encoders_enable(state, crtc);
 
        if (HAS_PCH_CPT(dev_priv))
-               cpt_verify_modeset(dev_priv, pipe);
+               intel_wait_for_pipe_scanline_moving(crtc);
 
        /*
         * Must wait for vblank to avoid spurious PCH FIFO underruns.