diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2023-12-13 12:25:12 +0200 |
---|---|---|
committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2024-01-22 19:03:11 +0200 |
commit | bb83f348ead2ec42b3c81003026333d2086887cf (patch) | |
tree | 15e5a4a65eadab7b9033ac0da536e89b6479d7a4 /drivers/gpu/drm/i915/display/intel_crtc.c | |
parent | c045bc428f774c45dc59afcebc2de34b981e48c3 (diff) |
drm/i915: Reorder drm_vblank_put() vs. need_vlv_dsi_wa
Drop the vblank reference only after we've done the hideous
need_vlv_dsi_wa stuff. This will make it easier to reuse the
the vblank evasion machinery elsewhere.
Keeping the vblank reference for a bit longer is not a
problem. In fact we might want to not drop it at all until
intel_pipe_update_end(), but we'll leave that idea for later.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231213102519.13500-3-ville.syrjala@linux.intel.com
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_crtc.c')
-rw-r--r-- | drivers/gpu/drm/i915/display/intel_crtc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_crtc.c b/drivers/gpu/drm/i915/display/intel_crtc.c index d5c3f6078e42..4df8927bb062 100644 --- a/drivers/gpu/drm/i915/display/intel_crtc.c +++ b/drivers/gpu/drm/i915/display/intel_crtc.c @@ -614,8 +614,6 @@ void intel_pipe_update_start(struct intel_atomic_state *state, finish_wait(wq, &wait); - drm_crtc_vblank_put(&crtc->base); - /* * On VLV/CHV DSI the scanline counter would appear to * increment approx. 1/3 of a scanline before start of vblank. @@ -634,6 +632,8 @@ void intel_pipe_update_start(struct intel_atomic_state *state, while (need_vlv_dsi_wa && scanline == vblank_start) scanline = intel_get_crtc_scanline(crtc); + drm_crtc_vblank_put(&crtc->base); + crtc->debug.scanline_start = scanline; crtc->debug.start_vbl_time = ktime_get(); crtc->debug.start_vbl_count = intel_crtc_get_vblank_counter(crtc); |