diff mbox series

[3/5] drm/i915/display: convert intel_has_pending_fb_unpin() to struct intel_display

Message ID d70ad8f9cbba5ee32d985b76047b56996ad4b31e.1741084010.git.jani.nikula@intel.com (mailing list archive)
State New
Headers show
Series drm/i915/display: convert intel_display.[ch] to struct intel_display | expand

Commit Message

Jani Nikula March 4, 2025, 10:27 a.m. UTC
Going forward, struct intel_display is the main display device data
pointer. The intel_display.[ch] files are too big to convert in one
go. Convert intel_has_pending_fb_unpin() to struct intel_display.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
 drivers/gpu/drm/i915/display/intel_ddi.c     |  3 ++-
 drivers/gpu/drm/i915/display/intel_display.c | 10 +++++-----
 drivers/gpu/drm/i915/display/intel_display.h |  4 ++--
 drivers/gpu/drm/i915/display/intel_dp.c      |  3 +--
 drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c |  3 ++-
 5 files changed, 12 insertions(+), 11 deletions(-)

Comments

Garg, Nemesa March 4, 2025, 12:48 p.m. UTC | #1
> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Jani
> Nikula
> Sent: Tuesday, March 4, 2025 3:58 PM
> To: intel-gfx@lists.freedesktop.org; intel-xe@lists.freedesktop.org
> Cc: Nikula, Jani <jani.nikula@intel.com>
> Subject: [PATCH 3/5] drm/i915/display: convert intel_has_pending_fb_unpin()
> to struct intel_display
> 
> Going forward, struct intel_display is the main display device data pointer. The
> intel_display.[ch] files are too big to convert in one go. Convert
> intel_has_pending_fb_unpin() to struct intel_display.
> 
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_ddi.c     |  3 ++-
>  drivers/gpu/drm/i915/display/intel_display.c | 10 +++++-----
> drivers/gpu/drm/i915/display/intel_display.h |  4 ++--
>  drivers/gpu/drm/i915/display/intel_dp.c      |  3 +--
>  drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c |  3 ++-
>  5 files changed, 12 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c
> b/drivers/gpu/drm/i915/display/intel_ddi.c
> index 3b7ec0be9011..676c1826f15c 100644
> --- a/drivers/gpu/drm/i915/display/intel_ddi.c
> +++ b/drivers/gpu/drm/i915/display/intel_ddi.c
> @@ -4660,6 +4660,7 @@ static int intel_ddi_init_dp_connector(struct
> intel_digital_port *dig_port)  static int intel_hdmi_reset_link(struct
> intel_encoder *encoder,
>  				 struct drm_modeset_acquire_ctx *ctx)  {
> +	struct intel_display *display = to_intel_display(encoder);
>  	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
>  	struct intel_hdmi *hdmi = enc_to_intel_hdmi(encoder);
>  	struct intel_connector *connector = hdmi->attached_connector; @@
> -4726,7 +4727,7 @@ static int intel_hdmi_reset_link(struct intel_encoder
> *encoder,
>  	 * would be perfectly happy if were to just reconfigure
>  	 * the SCDC settings on the fly.
>  	 */
> -	return intel_modeset_commit_pipes(dev_priv, BIT(crtc->pipe), ctx);
> +	return intel_modeset_commit_pipes(display, BIT(crtc->pipe), ctx);
>  }
> 
>  static void intel_ddi_link_check(struct intel_encoder *encoder) diff --git
> a/drivers/gpu/drm/i915/display/intel_display.c
> b/drivers/gpu/drm/i915/display/intel_display.c
> index debf9826fd2f..6962bc0da53c 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -764,12 +764,12 @@ static void icl_set_pipe_chicken(const struct
> intel_crtc_state *crtc_state)
>  	intel_de_write(dev_priv, PIPE_CHICKEN(pipe), tmp);  }
> 
> -bool intel_has_pending_fb_unpin(struct drm_i915_private *dev_priv)
> +bool intel_has_pending_fb_unpin(struct intel_display *display)
>  {
>  	struct drm_crtc *crtc;
>  	bool cleanup_done;
> 
> -	drm_for_each_crtc(crtc, &dev_priv->drm) {
> +	drm_for_each_crtc(crtc, display->drm) {
>  		struct drm_crtc_commit *commit;
>  		spin_lock(&crtc->commit_lock);
>  		commit = list_first_entry_or_null(&crtc->commit_list,
> @@ -5574,7 +5574,7 @@ int intel_modeset_all_pipes_late(struct
> intel_atomic_state *state,
>  	return 0;
>  }
> 
> -int intel_modeset_commit_pipes(struct drm_i915_private *i915,
> +int intel_modeset_commit_pipes(struct intel_display *display,
>  			       u8 pipe_mask,
>  			       struct drm_modeset_acquire_ctx *ctx)  { @@ -
> 5582,14 +5582,14 @@ int intel_modeset_commit_pipes(struct
> drm_i915_private *i915,
>  	struct intel_crtc *crtc;
>  	int ret;
> 
> -	state = drm_atomic_state_alloc(&i915->drm);
> +	state = drm_atomic_state_alloc(display->drm);
>  	if (!state)
>  		return -ENOMEM;
> 
>  	state->acquire_ctx = ctx;
>  	to_intel_atomic_state(state)->internal = true;
> 
> -	for_each_intel_crtc_in_pipe_mask(&i915->drm, crtc, pipe_mask) {
> +	for_each_intel_crtc_in_pipe_mask(display->drm, crtc, pipe_mask) {
>  		struct intel_crtc_state *crtc_state =
>  			intel_atomic_get_crtc_state(state, crtc);
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.h
> b/drivers/gpu/drm/i915/display/intel_display.h
> index 83a820b72a6e..65245ef04347 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.h
> +++ b/drivers/gpu/drm/i915/display/intel_display.h
> @@ -457,7 +457,7 @@ int vlv_get_cck_clock(struct drm_i915_private
> *dev_priv,
>  		      const char *name, u32 reg, int ref_freq);  int
> vlv_get_cck_clock_hpll(struct drm_i915_private *dev_priv,
>  			   const char *name, u32 reg);
> -bool intel_has_pending_fb_unpin(struct drm_i915_private *dev_priv);
> +bool intel_has_pending_fb_unpin(struct intel_display *display);
>  void intel_encoder_destroy(struct drm_encoder *encoder);  struct
> drm_display_mode *  intel_encoder_current_mode(struct intel_encoder
> *encoder); @@ -531,7 +531,7 @@ int
> intel_modeset_pipes_in_mask_early(struct intel_atomic_state *state,
>  				      const char *reason, u8 pipe_mask);  int
> intel_modeset_all_pipes_late(struct intel_atomic_state *state,
>  				 const char *reason);
> -int intel_modeset_commit_pipes(struct drm_i915_private *i915,
> +int intel_modeset_commit_pipes(struct intel_display *display,
>  			       u8 pipe_mask,
>  			       struct drm_modeset_acquire_ctx *ctx);  void
> intel_modeset_get_crtc_power_domains(struct intel_crtc_state *crtc_state,
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 205ec315b413..a236b5fc7a3d 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -5193,7 +5193,6 @@ static int intel_dp_retrain_link(struct intel_encoder
> *encoder,
>  				 struct drm_modeset_acquire_ctx *ctx)  {
>  	struct intel_display *display = to_intel_display(encoder);
> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
>  	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
>  	u8 pipe_mask;
>  	int ret;
> @@ -5224,7 +5223,7 @@ static int intel_dp_retrain_link(struct intel_encoder
> *encoder,
>  		    encoder->base.base.id, encoder->base.name,
>  		    str_yes_no(intel_dp->link.force_retrain));
> 
> -	ret = intel_modeset_commit_pipes(dev_priv, pipe_mask, ctx);
> +	ret = intel_modeset_commit_pipes(display, pipe_mask, ctx);
>  	if (ret == -EDEADLK)
>  		return ret;
> 
> diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c
> b/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c
> index 00f7cd6debf3..0c723e7c71a2 100644
> --- a/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c
> +++ b/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c
> @@ -328,6 +328,7 @@ static bool fence_is_active(const struct i915_fence_reg
> *fence)
> 
>  static struct i915_fence_reg *fence_find(struct i915_ggtt *ggtt)  {
> +	struct intel_display *display = &ggtt->vm.i915->display;
>  	struct i915_fence_reg *active = NULL;
>  	struct i915_fence_reg *fence, *fn;
> 
> @@ -353,7 +354,7 @@ static struct i915_fence_reg *fence_find(struct
> i915_ggtt *ggtt)
>  	}
> 
>  	/* Wait for completion of pending flips which consume fences */
> -	if (intel_has_pending_fb_unpin(ggtt->vm.i915))
> +	if (intel_has_pending_fb_unpin(display))
>  		return ERR_PTR(-EAGAIN);
> 
LGTM,
Reviewed-by: Nemesa Garg <nemesa.garg@intel.com>
>  	return ERR_PTR(-ENOBUFS);
> --
> 2.39.5
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
index 3b7ec0be9011..676c1826f15c 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -4660,6 +4660,7 @@  static int intel_ddi_init_dp_connector(struct intel_digital_port *dig_port)
 static int intel_hdmi_reset_link(struct intel_encoder *encoder,
 				 struct drm_modeset_acquire_ctx *ctx)
 {
+	struct intel_display *display = to_intel_display(encoder);
 	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
 	struct intel_hdmi *hdmi = enc_to_intel_hdmi(encoder);
 	struct intel_connector *connector = hdmi->attached_connector;
@@ -4726,7 +4727,7 @@  static int intel_hdmi_reset_link(struct intel_encoder *encoder,
 	 * would be perfectly happy if were to just reconfigure
 	 * the SCDC settings on the fly.
 	 */
-	return intel_modeset_commit_pipes(dev_priv, BIT(crtc->pipe), ctx);
+	return intel_modeset_commit_pipes(display, BIT(crtc->pipe), ctx);
 }
 
 static void intel_ddi_link_check(struct intel_encoder *encoder)
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index debf9826fd2f..6962bc0da53c 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -764,12 +764,12 @@  static void icl_set_pipe_chicken(const struct intel_crtc_state *crtc_state)
 	intel_de_write(dev_priv, PIPE_CHICKEN(pipe), tmp);
 }
 
-bool intel_has_pending_fb_unpin(struct drm_i915_private *dev_priv)
+bool intel_has_pending_fb_unpin(struct intel_display *display)
 {
 	struct drm_crtc *crtc;
 	bool cleanup_done;
 
-	drm_for_each_crtc(crtc, &dev_priv->drm) {
+	drm_for_each_crtc(crtc, display->drm) {
 		struct drm_crtc_commit *commit;
 		spin_lock(&crtc->commit_lock);
 		commit = list_first_entry_or_null(&crtc->commit_list,
@@ -5574,7 +5574,7 @@  int intel_modeset_all_pipes_late(struct intel_atomic_state *state,
 	return 0;
 }
 
-int intel_modeset_commit_pipes(struct drm_i915_private *i915,
+int intel_modeset_commit_pipes(struct intel_display *display,
 			       u8 pipe_mask,
 			       struct drm_modeset_acquire_ctx *ctx)
 {
@@ -5582,14 +5582,14 @@  int intel_modeset_commit_pipes(struct drm_i915_private *i915,
 	struct intel_crtc *crtc;
 	int ret;
 
-	state = drm_atomic_state_alloc(&i915->drm);
+	state = drm_atomic_state_alloc(display->drm);
 	if (!state)
 		return -ENOMEM;
 
 	state->acquire_ctx = ctx;
 	to_intel_atomic_state(state)->internal = true;
 
-	for_each_intel_crtc_in_pipe_mask(&i915->drm, crtc, pipe_mask) {
+	for_each_intel_crtc_in_pipe_mask(display->drm, crtc, pipe_mask) {
 		struct intel_crtc_state *crtc_state =
 			intel_atomic_get_crtc_state(state, crtc);
 
diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h
index 83a820b72a6e..65245ef04347 100644
--- a/drivers/gpu/drm/i915/display/intel_display.h
+++ b/drivers/gpu/drm/i915/display/intel_display.h
@@ -457,7 +457,7 @@  int vlv_get_cck_clock(struct drm_i915_private *dev_priv,
 		      const char *name, u32 reg, int ref_freq);
 int vlv_get_cck_clock_hpll(struct drm_i915_private *dev_priv,
 			   const char *name, u32 reg);
-bool intel_has_pending_fb_unpin(struct drm_i915_private *dev_priv);
+bool intel_has_pending_fb_unpin(struct intel_display *display);
 void intel_encoder_destroy(struct drm_encoder *encoder);
 struct drm_display_mode *
 intel_encoder_current_mode(struct intel_encoder *encoder);
@@ -531,7 +531,7 @@  int intel_modeset_pipes_in_mask_early(struct intel_atomic_state *state,
 				      const char *reason, u8 pipe_mask);
 int intel_modeset_all_pipes_late(struct intel_atomic_state *state,
 				 const char *reason);
-int intel_modeset_commit_pipes(struct drm_i915_private *i915,
+int intel_modeset_commit_pipes(struct intel_display *display,
 			       u8 pipe_mask,
 			       struct drm_modeset_acquire_ctx *ctx);
 void intel_modeset_get_crtc_power_domains(struct intel_crtc_state *crtc_state,
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 205ec315b413..a236b5fc7a3d 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -5193,7 +5193,6 @@  static int intel_dp_retrain_link(struct intel_encoder *encoder,
 				 struct drm_modeset_acquire_ctx *ctx)
 {
 	struct intel_display *display = to_intel_display(encoder);
-	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
 	struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
 	u8 pipe_mask;
 	int ret;
@@ -5224,7 +5223,7 @@  static int intel_dp_retrain_link(struct intel_encoder *encoder,
 		    encoder->base.base.id, encoder->base.name,
 		    str_yes_no(intel_dp->link.force_retrain));
 
-	ret = intel_modeset_commit_pipes(dev_priv, pipe_mask, ctx);
+	ret = intel_modeset_commit_pipes(display, pipe_mask, ctx);
 	if (ret == -EDEADLK)
 		return ret;
 
diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c b/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c
index 00f7cd6debf3..0c723e7c71a2 100644
--- a/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c
+++ b/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c
@@ -328,6 +328,7 @@  static bool fence_is_active(const struct i915_fence_reg *fence)
 
 static struct i915_fence_reg *fence_find(struct i915_ggtt *ggtt)
 {
+	struct intel_display *display = &ggtt->vm.i915->display;
 	struct i915_fence_reg *active = NULL;
 	struct i915_fence_reg *fence, *fn;
 
@@ -353,7 +354,7 @@  static struct i915_fence_reg *fence_find(struct i915_ggtt *ggtt)
 	}
 
 	/* Wait for completion of pending flips which consume fences */
-	if (intel_has_pending_fb_unpin(ggtt->vm.i915))
+	if (intel_has_pending_fb_unpin(display))
 		return ERR_PTR(-EAGAIN);
 
 	return ERR_PTR(-ENOBUFS);