[Intel-gfx] [PATCH v2 06/12] drm/i915: Simplify watermark state checker calling convention

Jani Nikula jani.nikula at intel.com
Thu Oct 5 13:08:42 UTC 2023


On Thu, 05 Oct 2023, Ville Syrjala <ville.syrjala at linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> There is never any reason to pass in both the crtc and its state
> as one can always dig out the crtc from its state. But for more
> consistency across the whole state checker let's just pass the
> overall atomic state+crtc here as well.
>
> v2: Also pass state+crtc here (Jani)
>
> Reviewed-by: Jani Nikula <jani.nikula at intel.com> #v1

Yup.

> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_modeset_verify.c | 2 +-
>  drivers/gpu/drm/i915/display/skl_watermark.c        | 8 +++++---
>  drivers/gpu/drm/i915/display/skl_watermark.h        | 4 ++--
>  3 files changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_modeset_verify.c b/drivers/gpu/drm/i915/display/intel_modeset_verify.c
> index 47d45ba1e707..e08c1aa25c4d 100644
> --- a/drivers/gpu/drm/i915/display/intel_modeset_verify.c
> +++ b/drivers/gpu/drm/i915/display/intel_modeset_verify.c
> @@ -233,7 +233,7 @@ void intel_modeset_verify_crtc(struct intel_crtc *crtc,
>  	    !intel_crtc_needs_fastset(new_crtc_state))
>  		return;
>  
> -	intel_wm_state_verify(crtc, new_crtc_state);
> +	intel_wm_state_verify(state, crtc);
>  	verify_connector_state(state, crtc);
>  	verify_crtc_state(state, crtc);
>  	intel_shared_dpll_state_verify(state, crtc);
> diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
> index d51cf92c96ae..99b8ccdc3dfa 100644
> --- a/drivers/gpu/drm/i915/display/skl_watermark.c
> +++ b/drivers/gpu/drm/i915/display/skl_watermark.c
> @@ -3134,10 +3134,12 @@ static void skl_wm_get_hw_state_and_sanitize(struct drm_i915_private *i915)
>  	skl_wm_sanitize(i915);
>  }
>  
> -void intel_wm_state_verify(struct intel_crtc *crtc,
> -			   const struct intel_crtc_state *new_crtc_state)
> +void intel_wm_state_verify(struct intel_atomic_state *state,
> +			   struct intel_crtc *crtc)
>  {
> -	struct drm_i915_private *i915 = to_i915(crtc->base.dev);
> +	struct drm_i915_private *i915 = to_i915(state->base.dev);
> +	const struct intel_crtc_state *new_crtc_state =
> +		intel_atomic_get_new_crtc_state(state, crtc);
>  	struct skl_hw_state {
>  		struct skl_ddb_entry ddb[I915_MAX_PLANES];
>  		struct skl_ddb_entry ddb_y[I915_MAX_PLANES];
> diff --git a/drivers/gpu/drm/i915/display/skl_watermark.h b/drivers/gpu/drm/i915/display/skl_watermark.h
> index 18e4b0661cbb..fb0da36fd3ec 100644
> --- a/drivers/gpu/drm/i915/display/skl_watermark.h
> +++ b/drivers/gpu/drm/i915/display/skl_watermark.h
> @@ -38,8 +38,8 @@ bool skl_ddb_allocation_overlaps(const struct skl_ddb_entry *ddb,
>  				 const struct skl_ddb_entry *entries,
>  				 int num_entries, int ignore_idx);
>  
> -void intel_wm_state_verify(struct intel_crtc *crtc,
> -			   const struct intel_crtc_state *new_crtc_state);
> +void intel_wm_state_verify(struct intel_atomic_state *state,
> +			   struct intel_crtc *crtc);
>  
>  void skl_watermark_ipc_init(struct drm_i915_private *i915);
>  void skl_watermark_ipc_update(struct drm_i915_private *i915);

-- 
Jani Nikula, Intel


More information about the Intel-gfx mailing list