All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Cc: intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org,
	jani.nikula@linux.intel.com, gustavo.sousa@intel.com,
	Jani Nikula <jani.nikula@intel.com>
Subject: Re: [PATCH 1/2] drm/i915/display_wa: Add helpers to check wa
Date: Wed, 2 Jul 2025 22:40:34 +0300	[thread overview]
Message-ID: <aGWLMinfzWd9IkFJ@intel.com> (raw)
In-Reply-To: <20250702084620.3837426-2-ankit.k.nautiyal@intel.com>

On Wed, Jul 02, 2025 at 02:16:18PM +0530, Ankit Nautiyal wrote:
> Introduce a generic helper to check display workarounds using an enum.
> 
> Convert Wa_16023588340 to use the new interface, simplifying WA checks
> and making future additions easier.
> 
> v2: Use drm_WARN instead of MISSING_CASE and simplify intel_display_wa
> macro. (Jani)
> 
> Suggested-by: Jani Nikula <jani.nikula@intel.com>
> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display_wa.c | 15 +++++++++++++++
>  drivers/gpu/drm/i915/display/intel_display_wa.h |  9 +++++++++
>  drivers/gpu/drm/i915/display/intel_fbc.c        |  2 +-
>  3 files changed, 25 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_wa.c b/drivers/gpu/drm/i915/display/intel_display_wa.c
> index f57280e9d041..f5e8d58d9a68 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_wa.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_wa.c
> @@ -3,6 +3,8 @@
>   * Copyright © 2023 Intel Corporation
>   */
>  
> +#include "drm/drm_print.h"
> +
>  #include "i915_reg.h"
>  #include "intel_de.h"
>  #include "intel_display_core.h"
> @@ -39,3 +41,16 @@ void intel_display_wa_apply(struct intel_display *display)
>  	else if (DISPLAY_VER(display) == 11)
>  		gen11_display_wa_apply(display);
>  }
> +
> +bool __intel_display_wa(struct intel_display *display, enum intel_display_wa wa)
> +{
> +	switch (wa) {
> +	case INTEL_DISPLAY_WA_16023588340:
> +		return intel_display_needs_wa_16023588340(display);
> +	default:
> +		drm_WARN(display->drm, 1, "Missing Wa number: %d\n", wa);
> +		break;
> +	}
> +
> +	return false;
> +}
> diff --git a/drivers/gpu/drm/i915/display/intel_display_wa.h b/drivers/gpu/drm/i915/display/intel_display_wa.h
> index babd9d16603d..146ee70d66f7 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_wa.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_wa.h
> @@ -21,4 +21,13 @@ static inline bool intel_display_needs_wa_16023588340(struct intel_display *disp
>  bool intel_display_needs_wa_16023588340(struct intel_display *display);
>  #endif
>  
> +enum intel_display_wa {
> +	INTEL_DISPLAY_WA_16023588340,

How is anyone supposed to keep track of these random numbers
and what they mean?

The only time I want to see these numbers is if I really have to
open the spec/hsd for it to double check some details. Othwerwise
it just seems like pointless noise that makes it harder to follow
the code/figure out what the heck is going on.

> +};
> +
> +bool __intel_display_wa(struct intel_display *display, enum intel_display_wa wa);
> +
> +#define intel_display_wa(__display, __wa) \
> +	__intel_display_wa((__display), INTEL_DISPLAY_WA_##__wa)
> +
>  #endif
> diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c
> index 6e26cb4c5724..e2e03af520b2 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbc.c
> +++ b/drivers/gpu/drm/i915/display/intel_fbc.c
> @@ -1464,7 +1464,7 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state,
>  		return 0;
>  	}
>  
> -	if (intel_display_needs_wa_16023588340(display)) {
> +	if (intel_display_wa(display, 16023588340)) {
>  		plane_state->no_fbc_reason = "Wa_16023588340";

This here for instance is completely useless. I have no idea what that
w/a is about or why it requires FBC to be disabled. And if I jump into
intel_display_needs_wa_16023588340() I am none the wiser.

>  		return 0;
>  	}
> -- 
> 2.45.2

-- 
Ville Syrjälä
Intel

  parent reply	other threads:[~2025-07-02 19:40 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-02  8:46 [PATCH 0/2] Introduce helper for display workarounds and add Wa_16025573575 Ankit Nautiyal
2025-07-02  8:46 ` [PATCH 1/2] drm/i915/display_wa: Add helpers to check wa Ankit Nautiyal
2025-07-02  9:29   ` Jani Nikula
2025-07-02 13:30   ` Gustavo Sousa
2025-07-02 14:12     ` Jani Nikula
2025-07-03  6:19       ` Nautiyal, Ankit K
2025-07-02 19:40   ` Ville Syrjälä [this message]
2025-07-02 20:25     ` Lucas De Marchi
2025-07-02 21:29       ` Ville Syrjälä
2025-07-02 21:49         ` Ville Syrjälä
2025-07-03  9:30           ` Nautiyal, Ankit K
2025-07-03 12:14             ` Gustavo Sousa
2025-07-03 13:51             ` Lucas De Marchi
2025-07-03 12:08           ` Gustavo Sousa
2025-07-03 13:55             ` Lucas De Marchi
2025-07-03 14:44               ` Gustavo Sousa
2025-07-02  8:46 ` [PATCH 2/2] drm/i915/gmbus: Add Wa_16025573575 for PTL for bit-bashing Ankit Nautiyal
2025-07-02 13:11   ` Gustavo Sousa
2025-07-03  6:05     ` Nautiyal, Ankit K
2025-07-03 12:16       ` Gustavo Sousa
2025-07-02  9:36 ` ✓ CI.KUnit: success for Introduce helper for display workarounds and add Wa_16025573575 (rev2) Patchwork
2025-07-02 10:01 ` ✓ i915.CI.BAT: " Patchwork
2025-07-02 10:18 ` ✓ Xe.CI.BAT: " Patchwork
2025-07-03  2:39 ` ✓ i915.CI.Full: " Patchwork
2025-07-04  1:16 ` ✗ Xe.CI.Full: failure " Patchwork
  -- strict thread matches above, loose matches on Subject: below --
2025-07-11  4:18 [PATCH 0/2] Introduce helper for display workarounds and add Wa_16025573575 Ankit Nautiyal
2025-07-11  4:18 ` [PATCH 1/2] drm/i915/display_wa: Add helpers to check wa Ankit Nautiyal
2025-07-16 14:18   ` Gustavo Sousa
2025-06-30  5:49 [PATCH 0/2] Introduce helper for display workarounds and add Wa_16025573575 Ankit Nautiyal
2025-06-30  5:49 ` [PATCH 1/2] drm/i915/display_wa: Add helpers to check wa Ankit Nautiyal
2025-06-30  7:23   ` Jani Nikula
2025-06-30  7:54     ` Nautiyal, Ankit K

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aGWLMinfzWd9IkFJ@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=ankit.k.nautiyal@intel.com \
    --cc=gustavo.sousa@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    --cc=jani.nikula@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.