Op 13-07-15 om 19:16 schreef Daniel Stone: > Hi, > > On 13 July 2015 at 15:30, Maarten Lankhorst > <maarten.lankhorst@xxxxxxxxxxxxxxx> wrote: >> @@ -13649,9 +13647,7 @@ static void intel_begin_crtc_commit(struct drm_crtc *crtc) >> >> /* Perform vblank evasion around commit operation */ >> if (crtc->state->active) >> - intel_crtc->atomic.evade = >> - intel_pipe_update_start(intel_crtc, >> - &intel_crtc->atomic.start_vbl_count); >> + intel_pipe_update_start(intel_crtc, &intel_crtc->atomic.start_vbl_count); >> >> if (!needs_modeset(crtc->state) && INTEL_INFO(dev)->gen >= 9) >> skl_detach_scalers(intel_crtc); >> @@ -13663,9 +13659,8 @@ static void intel_finish_crtc_commit(struct drm_crtc *crtc) >> struct drm_i915_private *dev_priv = dev->dev_private; >> struct intel_crtc *intel_crtc = to_intel_crtc(crtc); >> >> - if (intel_crtc->atomic.evade) >> - intel_pipe_update_end(intel_crtc, >> - intel_crtc->atomic.start_vbl_count); > Can we get rid of the 'evade' member in the struct now? > > Cheers, > Daniel What about merging with the below commit? ------>8----- drm/i915: remove start_vbl_count from intel_crtc_atomic_commit This is not precalculated, and should just be part of the crtc struct. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> --- diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 39729592d1b6..ede652867596 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -13647,7 +13647,7 @@ static void intel_begin_crtc_commit(struct drm_crtc *crtc) /* Perform vblank evasion around commit operation */ if (crtc->state->active) - intel_pipe_update_start(intel_crtc, &intel_crtc->atomic.start_vbl_count); + intel_pipe_update_start(intel_crtc, &intel_crtc->start_vbl_count); if (!needs_modeset(crtc->state) && INTEL_INFO(dev)->gen >= 9) skl_detach_scalers(intel_crtc); @@ -13658,7 +13658,7 @@ static void intel_finish_crtc_commit(struct drm_crtc *crtc) struct intel_crtc *intel_crtc = to_intel_crtc(crtc); if (crtc->state->active) - intel_pipe_update_end(intel_crtc, intel_crtc->atomic.start_vbl_count); + intel_pipe_update_end(intel_crtc, intel_crtc->start_vbl_count); } /** diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h index 250ee28baff9..0fcfa7f179c4 100644 --- a/drivers/gpu/drm/i915/intel_drv.h +++ b/drivers/gpu/drm/i915/intel_drv.h @@ -488,10 +488,6 @@ struct skl_pipe_wm { * and thus can't be run with interrupts disabled. */ struct intel_crtc_atomic_commit { - /* vblank evasion */ - bool evade; - unsigned start_vbl_count; - /* Sleepable operations to perform before commit */ bool wait_for_flips; bool disable_fbc; @@ -559,6 +555,7 @@ struct intel_crtc { int scanline_offset; + unsigned start_vbl_count; struct intel_crtc_atomic_commit atomic; /* scalers available on this crtc */ _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx