[PATCH 5/6] drm/i915: s/need_async_flip_disable_wa/need_async_flip_toggle_wa/

Murthy, Arun R arun.r.murthy at intel.com
Fri Apr 19 06:41:58 UTC 2024


> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces at lists.freedesktop.org> On Behalf Of Ville
> Syrjala
> Sent: Wednesday, March 20, 2024 9:34 PM
> To: intel-gfx at lists.freedesktop.org
> Subject: [PATCH 5/6] drm/i915:
> s/need_async_flip_disable_wa/need_async_flip_toggle_wa/
> 
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> Rename need_async_flip_disable_wa to need_async_flip_toggle_wa to better
> reflect the fact that we need to deal with the bad PLANE_CTL_ASYNC_FLIP
> double buffering behaviour going both ways.
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Reviewed-by: Arun R Murthy <arun.r.murthy at intel.com>

Thanks and Regards,
Arun R Murthy
--------------------
> ---
>  drivers/gpu/drm/i915/display/i9xx_plane.c          | 4 ++--
>  drivers/gpu/drm/i915/display/intel_atomic_plane.c  | 2 +-
>  drivers/gpu/drm/i915/display/intel_display.c       | 2 +-
>  drivers/gpu/drm/i915/display/intel_display_types.h | 2 +-
> drivers/gpu/drm/i915/display/skl_universal_plane.c | 5 ++---
>  5 files changed, 7 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/i9xx_plane.c
> b/drivers/gpu/drm/i915/display/i9xx_plane.c
> index 76fc7626051b..3442264443e5 100644
> --- a/drivers/gpu/drm/i915/display/i9xx_plane.c
> +++ b/drivers/gpu/drm/i915/display/i9xx_plane.c
> @@ -456,7 +456,7 @@ static void i9xx_plane_update_arm(struct intel_plane
> *plane,
>  	dspcntr = plane_state->ctl | i9xx_plane_ctl_crtc(crtc_state);
> 
>  	/* see intel_plane_atomic_calc_changes() */
> -	if (plane->need_async_flip_disable_wa &&
> +	if (plane->need_async_flip_toggle_wa &&
>  	    crtc_state->async_flip_planes & BIT(plane->id))
>  		dspcntr |= DISP_ASYNC_FLIP;
> 
> @@ -878,7 +878,7 @@ intel_primary_plane_create(struct drm_i915_private
> *dev_priv, enum pipe pipe)
>  		plane->enable_flip_done = vlv_primary_enable_flip_done;
>  		plane->disable_flip_done = vlv_primary_disable_flip_done;
>  	} else if (IS_BROADWELL(dev_priv)) {
> -		plane->need_async_flip_disable_wa = true;
> +		plane->need_async_flip_toggle_wa = true;
>  		plane->async_flip = g4x_primary_async_flip;
>  		plane->enable_flip_done = bdw_primary_enable_flip_done;
>  		plane->disable_flip_done = bdw_primary_disable_flip_done;
> diff --git a/drivers/gpu/drm/i915/display/intel_atomic_plane.c
> b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
> index 7098a34a17c8..b083b985d170 100644
> --- a/drivers/gpu/drm/i915/display/intel_atomic_plane.c
> +++ b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
> @@ -600,7 +600,7 @@ static int intel_plane_atomic_calc_changes(const struct
> intel_crtc_state *old_cr
>  	if (intel_plane_do_async_flip(plane, old_crtc_state, new_crtc_state)) {
>  		new_crtc_state->do_async_flip = true;
>  		new_crtc_state->async_flip_planes |= BIT(plane->id);
> -	} else if (plane->need_async_flip_disable_wa &&
> +	} else if (plane->need_async_flip_toggle_wa &&
>  		   new_crtc_state->uapi.async_flip) {
>  		/*
>  		 * On platforms with double buffered async flip bit we diff --git
> a/drivers/gpu/drm/i915/display/intel_display.c
> b/drivers/gpu/drm/i915/display/intel_display.c
> index dbcda79cf53c..8a10130c6f37 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -1109,7 +1109,7 @@ static void intel_crtc_async_flip_disable_wa(struct
> intel_atomic_state *state,
>  	int i;
> 
>  	for_each_old_intel_plane_in_state(state, plane, old_plane_state, i) {
> -		if (plane->need_async_flip_disable_wa &&
> +		if (plane->need_async_flip_toggle_wa &&
>  		    plane->pipe == crtc->pipe &&
>  		    disable_async_flip_planes & BIT(plane->id)) {
>  			/*
> diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h
> b/drivers/gpu/drm/i915/display/intel_display_types.h
> index 8b9860cefaae..4cbb6be5ff48 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_types.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
> @@ -1557,7 +1557,7 @@ struct intel_plane {
>  	enum i9xx_plane_id i9xx_plane;
>  	enum plane_id id;
>  	enum pipe pipe;
> -	bool need_async_flip_disable_wa;
> +	bool need_async_flip_toggle_wa;
>  	u32 frontbuffer_bit;
> 
>  	struct {
> diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c
> b/drivers/gpu/drm/i915/display/skl_universal_plane.c
> index ad4c90344f68..0a8e781a3648 100644
> --- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
> +++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
> @@ -1175,7 +1175,7 @@ skl_plane_update_arm(struct intel_plane *plane,
>  		skl_plane_ctl_crtc(crtc_state);
> 
>  	/* see intel_plane_atomic_calc_changes() */
> -	if (plane->need_async_flip_disable_wa &&
> +	if (plane->need_async_flip_toggle_wa &&
>  	    crtc_state->async_flip_planes & BIT(plane->id))
>  		plane_ctl |= PLANE_CTL_ASYNC_FLIP;
> 
> @@ -2371,8 +2371,7 @@ skl_universal_plane_create(struct drm_i915_private
> *dev_priv,
>  	plane->check_plane = skl_plane_check;
> 
>  	if (plane_id == PLANE_PRIMARY) {
> -		plane->need_async_flip_disable_wa =
> IS_DISPLAY_VER(dev_priv,
> -								   9, 10);
> +		plane->need_async_flip_toggle_wa = IS_DISPLAY_VER(dev_priv,
> 9, 10);
>  		plane->async_flip = skl_plane_async_flip;
>  		plane->enable_flip_done = skl_plane_enable_flip_done;
>  		plane->disable_flip_done = skl_plane_disable_flip_done;
> --
> 2.43.2



More information about the Intel-gfx mailing list