diff mbox series

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

Message ID 20240320160424.700-6-ville.syrjala@linux.intel.com (mailing list archive)
State New, archived
Headers show
Series drm/i915: Allow the first async flip to change modifier | expand

Commit Message

Ville Syrjälä March 20, 2024, 4:04 p.m. UTC
From: Ville Syrjälä <ville.syrjala@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@linux.intel.com>
---
 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(-)

Comments

Arun R Murthy April 19, 2024, 6:41 a.m. UTC | #1
> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Ville
> Syrjala
> Sent: Wednesday, March 20, 2024 9:34 PM
> To: intel-gfx@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@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@linux.intel.com>
Reviewed-by: Arun R Murthy <arun.r.murthy@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
diff mbox series

Patch

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;