diff mbox series

[14/15] drm/i915/display: Consider ultrajoiner for computing maxdotclock

Message ID 20240918144343.2876184-15-ankit.k.nautiyal@intel.com (mailing list archive)
State New, archived
Headers show
Series Ultrajoiner basic functionality series | expand

Commit Message

Nautiyal, Ankit K Sept. 18, 2024, 2:43 p.m. UTC
Use the check for ultrajoiner while computing maxdotclock.

Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
 drivers/gpu/drm/i915/display/intel_display.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Ville Syrjälä Sept. 19, 2024, 6:42 p.m. UTC | #1
On Wed, Sep 18, 2024 at 08:13:42PM +0530, Ankit Nautiyal wrote:
> Use the check for ultrajoiner while computing maxdotclock.
> 
> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 044f91359c42..b1dc44f9fa88 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -8197,8 +8197,11 @@ static int max_dotclock(struct drm_i915_private *i915)
>  {
>  	int max_dotclock = i915->display.cdclk.max_dotclk_freq;
>  
> +	if (HAS_ULTRAJOINER(i915))
> +		max_dotclock *= 4;
> +
>  	/* icl+ might use joiner */
> -	if (HAS_BIGJOINER(i915))
> +	else if (HAS_BIGJOINER(i915))

I'd probably write that as 'HAS_BIGJOINER || HAS_UNCOMPRESSED_JOINER'
just to reduce our dependency on the subtle detail that all current
uncompressed joiner capable hardware is also bigjoiner capable.

In fact, technically that isn't even true because bigjoiner
depends on dsc which can (at least theoretically) be fused
odd. Perhaps we also want to include a has_dsc check in
HAS_BIGJOINER() and HAS_ULTRAJOINER()...


>  		max_dotclock *= 2;
>  
>  	return max_dotclock;
> -- 
> 2.45.2
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 044f91359c42..b1dc44f9fa88 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -8197,8 +8197,11 @@  static int max_dotclock(struct drm_i915_private *i915)
 {
 	int max_dotclock = i915->display.cdclk.max_dotclk_freq;
 
+	if (HAS_ULTRAJOINER(i915))
+		max_dotclock *= 4;
+
 	/* icl+ might use joiner */
-	if (HAS_BIGJOINER(i915))
+	else if (HAS_BIGJOINER(i915))
 		max_dotclock *= 2;
 
 	return max_dotclock;