[Intel-gfx] [PATCH 01/15] drm/i915: Clean up casts to crtc_state in intel_atomic_commit_tail()
Matt Roper
matthew.d.roper at intel.com
Thu Sep 20 00:11:54 UTC 2018
On Wed, Sep 19, 2018 at 03:56:30PM +0200, Maarten Lankhorst wrote:
> Use old/new_intel_crtc_state, and get rid of all the conversion casts
> where they don't add anything.
>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 22 ++++++++++++----------
> 1 file changed, 12 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index eb25037d7b38..2ac381eb8103 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -12665,8 +12665,9 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
> struct intel_atomic_state *intel_state = to_intel_atomic_state(state);
> struct drm_i915_private *dev_priv = to_i915(dev);
> struct drm_crtc_state *old_crtc_state, *new_crtc_state;
> + struct intel_crtc_state *new_intel_crtc_state, *old_intel_crtc_state;
> struct drm_crtc *crtc;
> - struct intel_crtc_state *intel_cstate;
> + struct intel_crtc *intel_crtc;
> u64 put_domains[I915_MAX_PIPES] = {};
> int i;
>
> @@ -12678,21 +12679,22 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
> intel_display_power_get(dev_priv, POWER_DOMAIN_MODESET);
>
> for_each_oldnew_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) {
It looks like we have a for_each_oldnew_intel_plane_in_state, but not a
for_each_oldnew_intel_crtc_in_state yet. If we added the Intel-specific
iterator, then we could simplify this function a bit further by dropping
the base versions of crtc, old_crtc_state, and new_crtc_state here and
renaming the Intel-specific subtypes. I believe Ville mentioned that on
the other thread.
Anyway, the general cleanup here looks fine, so
Reviewed-by: Matt Roper <matthew.d.roper at intel.com>
even if you decide to defer further cleanup via
for_each_oldnew_intel_crtc_in_state to later.
Matt
> - struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
> + old_intel_crtc_state = to_intel_crtc_state(old_crtc_state);
> + new_intel_crtc_state = to_intel_crtc_state(new_crtc_state);
> + intel_crtc = to_intel_crtc(crtc);
>
> if (needs_modeset(new_crtc_state) ||
> to_intel_crtc_state(new_crtc_state)->update_pipe) {
>
> - put_domains[to_intel_crtc(crtc)->pipe] =
> + put_domains[intel_crtc->pipe] =
> modeset_get_crtc_power_domains(crtc,
> - to_intel_crtc_state(new_crtc_state));
> + new_intel_crtc_state);
> }
>
> if (!needs_modeset(new_crtc_state))
> continue;
>
> - intel_pre_plane_update(to_intel_crtc_state(old_crtc_state),
> - to_intel_crtc_state(new_crtc_state));
> + intel_pre_plane_update(old_intel_crtc_state, new_intel_crtc_state);
>
> if (old_crtc_state->active) {
> intel_crtc_disable_planes(crtc, old_crtc_state->plane_mask);
> @@ -12703,7 +12705,7 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
> */
> intel_crtc_disable_pipe_crc(intel_crtc);
>
> - dev_priv->display.crtc_disable(to_intel_crtc_state(old_crtc_state), state);
> + dev_priv->display.crtc_disable(old_intel_crtc_state, state);
> intel_crtc->active = false;
> intel_fbc_disable(intel_crtc);
> intel_disable_shared_dpll(intel_crtc);
> @@ -12724,7 +12726,7 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
> */
> if (INTEL_GEN(dev_priv) >= 9)
> dev_priv->display.initial_watermarks(intel_state,
> - to_intel_crtc_state(new_crtc_state));
> + new_intel_crtc_state);
> }
> }
> }
> @@ -12784,11 +12786,11 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
> * TODO: Move this (and other cleanup) to an async worker eventually.
> */
> for_each_new_crtc_in_state(state, crtc, new_crtc_state, i) {
> - intel_cstate = to_intel_crtc_state(new_crtc_state);
> + new_intel_crtc_state = to_intel_crtc_state(new_crtc_state);
>
> if (dev_priv->display.optimize_watermarks)
> dev_priv->display.optimize_watermarks(intel_state,
> - intel_cstate);
> + new_intel_crtc_state);
> }
>
> for_each_oldnew_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) {
> --
> 2.18.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Matt Roper
Graphics Software Engineer
IoTG Platform Enabling & Development
Intel Corporation
(916) 356-2795
More information about the Intel-gfx
mailing list