[RFC PATCH 4/6] drm/i915/drm: Instead of calling disable_sel_fetch_noarm set the callback

Jouni Högander jouni.hogander at intel.com
Tue Feb 7 12:03:24 UTC 2023


Now as we have proper logic to disable selective fetch for planes in we
can set the plane callbacks and drop direct calls to
*_disable_sel_fetch_noarm.

Signed-off-by: Jouni Högander <jouni.hogander at intel.com>
---
 drivers/gpu/drm/i915/display/intel_cursor.c        | 4 ++--
 drivers/gpu/drm/i915/display/skl_universal_plane.c | 3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_cursor.c b/drivers/gpu/drm/i915/display/intel_cursor.c
index add772689310..87c654b20a83 100644
--- a/drivers/gpu/drm/i915/display/intel_cursor.c
+++ b/drivers/gpu/drm/i915/display/intel_cursor.c
@@ -560,8 +560,6 @@ static void i9xx_cursor_update_arm(struct intel_plane *plane,
 	if (plane_state)
 		i9xx_cursor_update_sel_fetch_arm(plane, crtc_state,
 						       plane_state);
-	else
-		i9xx_cursor_disable_sel_fetch_noarm(plane, crtc_state);
 
 	if (plane->cursor.base != base ||
 	    plane->cursor.size != fbc_ctl ||
@@ -810,6 +808,8 @@ intel_cursor_plane_create(struct drm_i915_private *dev_priv,
 		cursor->max_stride = i9xx_cursor_max_stride;
 		cursor->update_arm = i9xx_cursor_update_arm;
 		cursor->disable_arm = i9xx_cursor_disable_arm;
+		cursor->disable_sel_fetch_noarm =
+			i9xx_cursor_disable_sel_fetch_noarm;
 		cursor->get_hw_state = i9xx_cursor_get_hw_state;
 		cursor->check_plane = i9xx_check_cursor;
 	}
diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c b/drivers/gpu/drm/i915/display/skl_universal_plane.c
index 6a4ec5dd2250..1abf8f76f945 100644
--- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
+++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
@@ -654,7 +654,6 @@ icl_plane_disable_arm(struct intel_plane *plane,
 
 	skl_write_plane_wm(plane, crtc_state);
 
-	icl_plane_disable_sel_fetch_noarm(plane, crtc_state);
 	intel_de_write_fw(dev_priv, PLANE_CTL(pipe, plane_id), 0);
 	intel_de_write_fw(dev_priv, PLANE_SURF(pipe, plane_id), 0);
 }
@@ -2337,6 +2336,8 @@ skl_universal_plane_create(struct drm_i915_private *dev_priv,
 		plane->update_noarm = icl_plane_update_noarm;
 		plane->update_arm = icl_plane_update_arm;
 		plane->disable_arm = icl_plane_disable_arm;
+		plane->disable_sel_fetch_noarm =
+			icl_plane_disable_sel_fetch_noarm;
 	} else {
 		plane->update_noarm = skl_plane_update_noarm;
 		plane->update_arm = skl_plane_update_arm;
-- 
2.34.1



More information about the Intel-gfx-trybot mailing list