On Wed, Feb 06, 2019 at 10:49:10PM +0200, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > Wrap the .update_plane()/.update_slave()/.disable_plane() vfunc > calls into helpers which also take care to emit the appropriate > tracepoint. > > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_atomic_plane.c | 49 +++++++++++++++++------ > drivers/gpu/drm/i915/intel_display.c | 19 ++++----- > drivers/gpu/drm/i915/intel_drv.h | 8 ++++ > 3 files changed, 51 insertions(+), 25 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_atomic_plane.c b/drivers/gpu/drm/i915/intel_atomic_plane.c > index a1a263026574..f9fc06017a39 100644 > --- a/drivers/gpu/drm/i915/intel_atomic_plane.c > +++ b/drivers/gpu/drm/i915/intel_atomic_plane.c > @@ -212,6 +212,35 @@ skl_next_plane_to_commit(struct intel_atomic_state *state, > return NULL; > } > > +void intel_update_plane(struct intel_plane *plane, > + const struct intel_crtc_state *crtc_state, > + const struct intel_plane_state *plane_state) > +{ > + struct intel_crtc *crtc = to_intel_crtc(crtc_state->base.crtc); > + > + trace_intel_update_plane(&plane->base, crtc); > + plane->update_plane(plane, crtc_state, plane_state); > +} > + > +void intel_update_slave(struct intel_plane *plane, > + const struct intel_crtc_state *crtc_state, > + const struct intel_plane_state *plane_state) > +{ > + struct intel_crtc *crtc = to_intel_crtc(crtc_state->base.crtc); > + > + trace_intel_update_plane(&plane->base, crtc); > + plane->update_slave(plane, crtc_state, plane_state); > +} > + > +void intel_disable_plane(struct intel_plane *plane, > + const struct intel_crtc_state *crtc_state) > +{ > + struct intel_crtc *crtc = to_intel_crtc(crtc_state->base.crtc); > + > + trace_intel_disable_plane(&plane->base, crtc); > + plane->disable_plane(plane, crtc_state); > +} > + > void skl_update_planes_on_crtc(struct intel_atomic_state *state, > struct intel_crtc *crtc) > { > @@ -236,8 +265,7 @@ void skl_update_planes_on_crtc(struct intel_atomic_state *state, > intel_atomic_get_new_plane_state(state, plane); > > if (new_plane_state->base.visible) { > - trace_intel_update_plane(&plane->base, crtc); > - plane->update_plane(plane, new_crtc_state, new_plane_state); > + intel_update_plane(plane, new_crtc_state, new_plane_state); > } else if (new_plane_state->slave) { > struct intel_plane *master = > new_plane_state->linked_plane; > @@ -254,11 +282,9 @@ void skl_update_planes_on_crtc(struct intel_atomic_state *state, > new_plane_state = > intel_atomic_get_new_plane_state(state, master); > > - trace_intel_update_plane(&plane->base, crtc); > - plane->update_slave(plane, new_crtc_state, new_plane_state); > + intel_update_slave(plane, new_crtc_state, new_plane_state); > } else { > - trace_intel_disable_plane(&plane->base, crtc); > - plane->disable_plane(plane, new_crtc_state); > + intel_disable_plane(plane, new_crtc_state); > } > } > } > @@ -278,13 +304,10 @@ void i9xx_update_planes_on_crtc(struct intel_atomic_state *state, > !(update_mask & BIT(plane->id))) > continue; > > - if (new_plane_state->base.visible) { > - trace_intel_update_plane(&plane->base, crtc); > - plane->update_plane(plane, new_crtc_state, new_plane_state); > - } else { > - trace_intel_disable_plane(&plane->base, crtc); > - plane->disable_plane(plane, new_crtc_state); > - } > + if (new_plane_state->base.visible) > + intel_update_plane(plane, new_crtc_state, new_plane_state); > + else > + intel_disable_plane(plane, new_crtc_state); > } > } > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index e404e9000893..de0e871da8db 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -2820,8 +2820,7 @@ static void intel_plane_disable_noatomic(struct intel_crtc *crtc, > if (plane->id == PLANE_PRIMARY) > intel_pre_disable_primary_noatomic(&crtc->base); > > - trace_intel_disable_plane(&plane->base, crtc); > - plane->disable_plane(plane, crtc_state); > + intel_disable_plane(plane, crtc_state); > } > > static void > @@ -5524,8 +5523,7 @@ static void intel_crtc_disable_planes(struct intel_atomic_state *state, > !(update_mask & BIT(plane->id))) > continue; > > - trace_intel_disable_plane(&plane->base, crtc); > - plane->disable_plane(plane, new_crtc_state); > + intel_disable_plane(plane, new_crtc_state); > > if (old_plane_state->base.visible) > fb_bits |= plane->frontbuffer_bit; > @@ -13937,14 +13935,11 @@ intel_legacy_cursor_update(struct drm_plane *plane, > */ > crtc_state->active_planes = new_crtc_state->active_planes; > > - if (plane->state->visible) { > - trace_intel_update_plane(plane, to_intel_crtc(crtc)); > - intel_plane->update_plane(intel_plane, crtc_state, > - to_intel_plane_state(plane->state)); > - } else { > - trace_intel_disable_plane(plane, to_intel_crtc(crtc)); > - intel_plane->disable_plane(intel_plane, crtc_state); > - } > + if (plane->state->visible) > + intel_update_plane(intel_plane, crtc_state, > + to_intel_plane_state(plane->state)); > + else > + intel_disable_plane(intel_plane, crtc_state); > > intel_plane_unpin_fb(to_intel_plane_state(old_plane_state)); > > diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h > index 90ba5436370e..6093bc34720a 100644 > --- a/drivers/gpu/drm/i915/intel_drv.h > +++ b/drivers/gpu/drm/i915/intel_drv.h > @@ -2361,6 +2361,14 @@ int intel_atomic_setup_scalers(struct drm_i915_private *dev_priv, > struct intel_crtc_state *crtc_state); > > /* intel_atomic_plane.c */ > +void intel_update_plane(struct intel_plane *plane, > + const struct intel_crtc_state *crtc_state, > + const struct intel_plane_state *plane_state); > +void intel_update_slave(struct intel_plane *plane, > + const struct intel_crtc_state *crtc_state, > + const struct intel_plane_state *plane_state); > +void intel_disable_plane(struct intel_plane *plane, > + const struct intel_crtc_state *crtc_state); > struct intel_plane *intel_plane_alloc(void); > void intel_plane_free(struct intel_plane *plane); > struct drm_plane_state *intel_plane_duplicate_state(struct drm_plane *plane); > -- > 2.19.2 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx