diff mbox series

[11/15] drm/i915/display: convert HAS_ULTRAJOINER() to struct intel_display

Message ID ea4d7f4694ba92c87b00258cd9786d668a09c313.1730740629.git.jani.nikula@intel.com (mailing list archive)
State New
Headers show
Series drm/i915/display: convert display feature helpers to struct intel_display | expand

Commit Message

Jani Nikula Nov. 4, 2024, 5:19 p.m. UTC
Convert HAS_ULTRAJOINER() to struct intel_display. Do minimal drive-by
conversions to struct intel_display in the callers while at it.

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

Comments

Vinod Govindapillai Nov. 6, 2024, 10:55 a.m. UTC | #1
On Mon, 2024-11-04 at 19:19 +0200, Jani Nikula wrote:
> Convert HAS_ULTRAJOINER() to struct intel_display. Do minimal drive-by
> conversions to struct intel_display in the callers while at it.
> 
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display.c         | 10 ++++++----
>  drivers/gpu/drm/i915/display/intel_display_debugfs.c |  4 ++--
>  drivers/gpu/drm/i915/display/intel_display_device.h  |  6 +++---
>  drivers/gpu/drm/i915/display/intel_dp.c              |  5 ++---
>  4 files changed, 13 insertions(+), 12 deletions(-)

Reviewed-by: Vinod Govindapillai <vinod.govindapillai@intel.com>

> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c
> b/drivers/gpu/drm/i915/display/intel_display.c
> index f53611e83502..a3924bbb0d2a 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -3746,12 +3746,13 @@ static u8 fixup_ultrajoiner_secondary_pipes(u8 ultrajoiner_primary_pipes,
>  static void enabled_ultrajoiner_pipes(struct drm_i915_private *i915,
>                                       u8 *primary_pipes, u8 *secondary_pipes)
>  {
> +       struct intel_display *display = &i915->display;
>         struct intel_crtc *crtc;
>  
>         *primary_pipes = 0;
>         *secondary_pipes = 0;
>  
> -       if (!HAS_ULTRAJOINER(i915))
> +       if (!HAS_ULTRAJOINER(display))
>                 return;
>  
>         for_each_intel_crtc_in_pipe_mask(&i915->drm, crtc,
> @@ -8310,11 +8311,12 @@ void intel_setup_outputs(struct drm_i915_private *dev_priv)
>  
>  static int max_dotclock(struct drm_i915_private *i915)
>  {
> -       int max_dotclock = i915->display.cdclk.max_dotclk_freq;
> +       struct intel_display *display = &i915->display;
> +       int max_dotclock = display->cdclk.max_dotclk_freq;
>  
> -       if (HAS_ULTRAJOINER(i915))
> +       if (HAS_ULTRAJOINER(display))
>                 max_dotclock *= 4;
> -       else if (HAS_UNCOMPRESSED_JOINER(i915) || HAS_BIGJOINER(i915))
> +       else if (HAS_UNCOMPRESSED_JOINER(display) || HAS_BIGJOINER(display))
>                 max_dotclock *= 2;
>  
>         return max_dotclock;
> diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> index 11aff485d8fa..2874867aae2b 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> @@ -1331,7 +1331,7 @@ static ssize_t i915_joiner_write(struct file *file,
>  {
>         struct seq_file *m = file->private_data;
>         struct intel_connector *connector = m->private;
> -       struct drm_i915_private *i915 = to_i915(connector->base.dev);
> +       struct intel_display *display = to_intel_display(connector);
>         int force_joined_pipes = 0;
>         int ret;
>  
> @@ -1349,7 +1349,7 @@ static ssize_t i915_joiner_write(struct file *file,
>                 connector->force_joined_pipes = force_joined_pipes;
>                 break;
>         case 4:
> -               if (HAS_ULTRAJOINER(i915)) {
> +               if (HAS_ULTRAJOINER(display)) {
>                         connector->force_joined_pipes = force_joined_pipes;
>                         break;
>                 }
> diff --git a/drivers/gpu/drm/i915/display/intel_display_device.h
> b/drivers/gpu/drm/i915/display/intel_display_device.h
> index e1e718fced3c..548256401d0a 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_device.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_device.h
> @@ -178,9 +178,9 @@ struct intel_display_platforms {
>  #define HAS_TRANSCODER(i915, trans)    ((DISPLAY_RUNTIME_INFO(i915)->cpu_transcoder_mask & \
>                                           BIT(trans)) != 0)
>  #define HAS_UNCOMPRESSED_JOINER(i915)  (DISPLAY_VER(i915) >= 13)
> -#define HAS_ULTRAJOINER(i915)          ((DISPLAY_VER(i915) >= 20 || \
> -                                         (IS_DGFX(i915) && DISPLAY_VER(i915) == 14)) && \
> -                                        HAS_DSC(i915))
> +#define HAS_ULTRAJOINER(__display)     ((DISPLAY_VER(__display) >= 20 || \
> +                                         ((__display)->platform.dgfx && DISPLAY_VER(__display) ==
> 14)) && \
> +                                        HAS_DSC(__display))
>  #define HAS_VRR(i915)                  (DISPLAY_VER(i915) >= 11)
>  #define HAS_AS_SDP(i915)               (DISPLAY_VER(i915) >= 13)
>  #define HAS_CMRR(i915)                 (DISPLAY_VER(i915) >= 20)
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
> index a27da96d2c60..7d65945c9563 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -1333,16 +1333,15 @@ int intel_dp_num_joined_pipes(struct intel_dp *intel_dp,
>                               int hdisplay, int clock)
>  {
>         struct intel_display *display = to_intel_display(intel_dp);
> -       struct drm_i915_private *i915 = to_i915(display->drm);
>  
>         if (connector->force_joined_pipes)
>                 return connector->force_joined_pipes;
>  
> -       if (HAS_ULTRAJOINER(i915) &&
> +       if (HAS_ULTRAJOINER(display) &&
>             intel_dp_needs_joiner(intel_dp, connector, hdisplay, clock, 4))
>                 return 4;
>  
> -       if ((HAS_BIGJOINER(i915) || HAS_UNCOMPRESSED_JOINER(i915)) &&
> +       if ((HAS_BIGJOINER(display) || HAS_UNCOMPRESSED_JOINER(display)) &&
>             intel_dp_needs_joiner(intel_dp, connector, hdisplay, clock, 2))
>                 return 2;
>
Rodrigo Vivi Nov. 6, 2024, 5:09 p.m. UTC | #2
On Mon, Nov 04, 2024 at 07:19:25PM +0200, Jani Nikula wrote:
> Convert HAS_ULTRAJOINER() to struct intel_display. Do minimal drive-by
> conversions to struct intel_display in the callers while at it.

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

> 
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display.c         | 10 ++++++----
>  drivers/gpu/drm/i915/display/intel_display_debugfs.c |  4 ++--
>  drivers/gpu/drm/i915/display/intel_display_device.h  |  6 +++---
>  drivers/gpu/drm/i915/display/intel_dp.c              |  5 ++---
>  4 files changed, 13 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index f53611e83502..a3924bbb0d2a 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -3746,12 +3746,13 @@ static u8 fixup_ultrajoiner_secondary_pipes(u8 ultrajoiner_primary_pipes,
>  static void enabled_ultrajoiner_pipes(struct drm_i915_private *i915,
>  				      u8 *primary_pipes, u8 *secondary_pipes)
>  {
> +	struct intel_display *display = &i915->display;
>  	struct intel_crtc *crtc;
>  
>  	*primary_pipes = 0;
>  	*secondary_pipes = 0;
>  
> -	if (!HAS_ULTRAJOINER(i915))
> +	if (!HAS_ULTRAJOINER(display))
>  		return;
>  
>  	for_each_intel_crtc_in_pipe_mask(&i915->drm, crtc,
> @@ -8310,11 +8311,12 @@ void intel_setup_outputs(struct drm_i915_private *dev_priv)
>  
>  static int max_dotclock(struct drm_i915_private *i915)
>  {
> -	int max_dotclock = i915->display.cdclk.max_dotclk_freq;
> +	struct intel_display *display = &i915->display;
> +	int max_dotclock = display->cdclk.max_dotclk_freq;
>  
> -	if (HAS_ULTRAJOINER(i915))
> +	if (HAS_ULTRAJOINER(display))
>  		max_dotclock *= 4;
> -	else if (HAS_UNCOMPRESSED_JOINER(i915) || HAS_BIGJOINER(i915))
> +	else if (HAS_UNCOMPRESSED_JOINER(display) || HAS_BIGJOINER(display))
>  		max_dotclock *= 2;
>  
>  	return max_dotclock;
> diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> index 11aff485d8fa..2874867aae2b 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> @@ -1331,7 +1331,7 @@ static ssize_t i915_joiner_write(struct file *file,
>  {
>  	struct seq_file *m = file->private_data;
>  	struct intel_connector *connector = m->private;
> -	struct drm_i915_private *i915 = to_i915(connector->base.dev);
> +	struct intel_display *display = to_intel_display(connector);
>  	int force_joined_pipes = 0;
>  	int ret;
>  
> @@ -1349,7 +1349,7 @@ static ssize_t i915_joiner_write(struct file *file,
>  		connector->force_joined_pipes = force_joined_pipes;
>  		break;
>  	case 4:
> -		if (HAS_ULTRAJOINER(i915)) {
> +		if (HAS_ULTRAJOINER(display)) {
>  			connector->force_joined_pipes = force_joined_pipes;
>  			break;
>  		}
> diff --git a/drivers/gpu/drm/i915/display/intel_display_device.h b/drivers/gpu/drm/i915/display/intel_display_device.h
> index e1e718fced3c..548256401d0a 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_device.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_device.h
> @@ -178,9 +178,9 @@ struct intel_display_platforms {
>  #define HAS_TRANSCODER(i915, trans)	((DISPLAY_RUNTIME_INFO(i915)->cpu_transcoder_mask & \
>  					  BIT(trans)) != 0)
>  #define HAS_UNCOMPRESSED_JOINER(i915)	(DISPLAY_VER(i915) >= 13)
> -#define HAS_ULTRAJOINER(i915)		((DISPLAY_VER(i915) >= 20 || \
> -					  (IS_DGFX(i915) && DISPLAY_VER(i915) == 14)) && \
> -					 HAS_DSC(i915))
> +#define HAS_ULTRAJOINER(__display)	((DISPLAY_VER(__display) >= 20 || \
> +					  ((__display)->platform.dgfx && DISPLAY_VER(__display) == 14)) && \
> +					 HAS_DSC(__display))
>  #define HAS_VRR(i915)			(DISPLAY_VER(i915) >= 11)
>  #define HAS_AS_SDP(i915)		(DISPLAY_VER(i915) >= 13)
>  #define HAS_CMRR(i915)			(DISPLAY_VER(i915) >= 20)
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
> index a27da96d2c60..7d65945c9563 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -1333,16 +1333,15 @@ int intel_dp_num_joined_pipes(struct intel_dp *intel_dp,
>  			      int hdisplay, int clock)
>  {
>  	struct intel_display *display = to_intel_display(intel_dp);
> -	struct drm_i915_private *i915 = to_i915(display->drm);
>  
>  	if (connector->force_joined_pipes)
>  		return connector->force_joined_pipes;
>  
> -	if (HAS_ULTRAJOINER(i915) &&
> +	if (HAS_ULTRAJOINER(display) &&
>  	    intel_dp_needs_joiner(intel_dp, connector, hdisplay, clock, 4))
>  		return 4;
>  
> -	if ((HAS_BIGJOINER(i915) || HAS_UNCOMPRESSED_JOINER(i915)) &&
> +	if ((HAS_BIGJOINER(display) || HAS_UNCOMPRESSED_JOINER(display)) &&
>  	    intel_dp_needs_joiner(intel_dp, connector, hdisplay, clock, 2))
>  		return 2;
>  
> -- 
> 2.39.5
>
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index f53611e83502..a3924bbb0d2a 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -3746,12 +3746,13 @@  static u8 fixup_ultrajoiner_secondary_pipes(u8 ultrajoiner_primary_pipes,
 static void enabled_ultrajoiner_pipes(struct drm_i915_private *i915,
 				      u8 *primary_pipes, u8 *secondary_pipes)
 {
+	struct intel_display *display = &i915->display;
 	struct intel_crtc *crtc;
 
 	*primary_pipes = 0;
 	*secondary_pipes = 0;
 
-	if (!HAS_ULTRAJOINER(i915))
+	if (!HAS_ULTRAJOINER(display))
 		return;
 
 	for_each_intel_crtc_in_pipe_mask(&i915->drm, crtc,
@@ -8310,11 +8311,12 @@  void intel_setup_outputs(struct drm_i915_private *dev_priv)
 
 static int max_dotclock(struct drm_i915_private *i915)
 {
-	int max_dotclock = i915->display.cdclk.max_dotclk_freq;
+	struct intel_display *display = &i915->display;
+	int max_dotclock = display->cdclk.max_dotclk_freq;
 
-	if (HAS_ULTRAJOINER(i915))
+	if (HAS_ULTRAJOINER(display))
 		max_dotclock *= 4;
-	else if (HAS_UNCOMPRESSED_JOINER(i915) || HAS_BIGJOINER(i915))
+	else if (HAS_UNCOMPRESSED_JOINER(display) || HAS_BIGJOINER(display))
 		max_dotclock *= 2;
 
 	return max_dotclock;
diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
index 11aff485d8fa..2874867aae2b 100644
--- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
+++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
@@ -1331,7 +1331,7 @@  static ssize_t i915_joiner_write(struct file *file,
 {
 	struct seq_file *m = file->private_data;
 	struct intel_connector *connector = m->private;
-	struct drm_i915_private *i915 = to_i915(connector->base.dev);
+	struct intel_display *display = to_intel_display(connector);
 	int force_joined_pipes = 0;
 	int ret;
 
@@ -1349,7 +1349,7 @@  static ssize_t i915_joiner_write(struct file *file,
 		connector->force_joined_pipes = force_joined_pipes;
 		break;
 	case 4:
-		if (HAS_ULTRAJOINER(i915)) {
+		if (HAS_ULTRAJOINER(display)) {
 			connector->force_joined_pipes = force_joined_pipes;
 			break;
 		}
diff --git a/drivers/gpu/drm/i915/display/intel_display_device.h b/drivers/gpu/drm/i915/display/intel_display_device.h
index e1e718fced3c..548256401d0a 100644
--- a/drivers/gpu/drm/i915/display/intel_display_device.h
+++ b/drivers/gpu/drm/i915/display/intel_display_device.h
@@ -178,9 +178,9 @@  struct intel_display_platforms {
 #define HAS_TRANSCODER(i915, trans)	((DISPLAY_RUNTIME_INFO(i915)->cpu_transcoder_mask & \
 					  BIT(trans)) != 0)
 #define HAS_UNCOMPRESSED_JOINER(i915)	(DISPLAY_VER(i915) >= 13)
-#define HAS_ULTRAJOINER(i915)		((DISPLAY_VER(i915) >= 20 || \
-					  (IS_DGFX(i915) && DISPLAY_VER(i915) == 14)) && \
-					 HAS_DSC(i915))
+#define HAS_ULTRAJOINER(__display)	((DISPLAY_VER(__display) >= 20 || \
+					  ((__display)->platform.dgfx && DISPLAY_VER(__display) == 14)) && \
+					 HAS_DSC(__display))
 #define HAS_VRR(i915)			(DISPLAY_VER(i915) >= 11)
 #define HAS_AS_SDP(i915)		(DISPLAY_VER(i915) >= 13)
 #define HAS_CMRR(i915)			(DISPLAY_VER(i915) >= 20)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index a27da96d2c60..7d65945c9563 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -1333,16 +1333,15 @@  int intel_dp_num_joined_pipes(struct intel_dp *intel_dp,
 			      int hdisplay, int clock)
 {
 	struct intel_display *display = to_intel_display(intel_dp);
-	struct drm_i915_private *i915 = to_i915(display->drm);
 
 	if (connector->force_joined_pipes)
 		return connector->force_joined_pipes;
 
-	if (HAS_ULTRAJOINER(i915) &&
+	if (HAS_ULTRAJOINER(display) &&
 	    intel_dp_needs_joiner(intel_dp, connector, hdisplay, clock, 4))
 		return 4;
 
-	if ((HAS_BIGJOINER(i915) || HAS_UNCOMPRESSED_JOINER(i915)) &&
+	if ((HAS_BIGJOINER(display) || HAS_UNCOMPRESSED_JOINER(display)) &&
 	    intel_dp_needs_joiner(intel_dp, connector, hdisplay, clock, 2))
 		return 2;