[PATCH 08/10] drm/i915/display: switch to display detected steppings

Matt Roper matthew.d.roper at intel.com
Wed Aug 21 00:01:14 UTC 2024


On Tue, Aug 20, 2024 at 10:00:41PM +0300, Jani Nikula wrote:
> Move the stepping related macros over to display. We can proceed to
> remove the compat macros from xe.
> 
> Note: Looks like we've failed to actually initialize the display
> stepping for GMD ID based platforms in the xe driver. It does get set in
> display runtime info, but until now the compat macro used
> xe->info.step.display which was not set for GMD ID.
> 
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>

Reviewed-by: Matt Roper <matthew.d.roper at intel.com>

> ---
>  drivers/gpu/drm/i915/display/intel_display_device.c | 2 ++
>  drivers/gpu/drm/i915/display/intel_display_device.h | 6 ++++++
>  drivers/gpu/drm/i915/i915_drv.h                     | 5 -----
>  drivers/gpu/drm/i915/intel_device_info.c            | 1 -
>  drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h   | 5 -----
>  5 files changed, 8 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c b/drivers/gpu/drm/i915/display/intel_display_device.c
> index 1ac3ab3954a1..06b55ae38a44 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_device.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_device.c
> @@ -1711,6 +1711,8 @@ void intel_display_device_info_print(const struct intel_display_device_info *inf
>  		drm_printf(p, "display version: %u\n",
>  			   runtime->ip.ver);
>  
> +	drm_printf(p, "display stepping: %s\n", intel_step_name(runtime->step));
> +
>  #define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, str_yes_no(info->name))
>  	DEV_INFO_DISPLAY_FOR_EACH_FLAG(PRINT_FLAG);
>  #undef PRINT_FLAG
> diff --git a/drivers/gpu/drm/i915/display/intel_display_device.h b/drivers/gpu/drm/i915/display/intel_display_device.h
> index 1c75cbd68dea..611be3fa3af6 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_device.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_device.h
> @@ -194,6 +194,12 @@ enum intel_display_subplatform {
>  #define IS_DISPLAY_VER(i915, from, until) \
>  	(DISPLAY_VER(i915) >= (from) && DISPLAY_VER(i915) <= (until))
>  
> +#define INTEL_DISPLAY_STEP(__i915) (DISPLAY_RUNTIME_INFO(__i915)->step)
> +
> +#define IS_DISPLAY_STEP(__i915, since, until) \
> +	(drm_WARN_ON(__to_intel_display(__i915)->drm, INTEL_DISPLAY_STEP(__i915) == STEP_NONE), \
> +	 INTEL_DISPLAY_STEP(__i915) >= (since) && INTEL_DISPLAY_STEP(__i915) < (until))
> +
>  struct intel_display_runtime_info {
>  	enum intel_display_platform platform;
>  	enum intel_display_subplatform subplatform;
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 94f7f6cc444c..3b1b16e71cf9 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -408,15 +408,10 @@ static inline struct intel_gt *to_gt(const struct drm_i915_private *i915)
>  
>  #define INTEL_REVID(i915)	(to_pci_dev((i915)->drm.dev)->revision)
>  
> -#define INTEL_DISPLAY_STEP(__i915) (RUNTIME_INFO(__i915)->step.display_step)
>  #define INTEL_GRAPHICS_STEP(__i915) (RUNTIME_INFO(__i915)->step.graphics_step)
>  #define INTEL_MEDIA_STEP(__i915) (RUNTIME_INFO(__i915)->step.media_step)
>  #define INTEL_BASEDIE_STEP(__i915) (RUNTIME_INFO(__i915)->step.basedie_step)
>  
> -#define IS_DISPLAY_STEP(__i915, since, until) \
> -	(drm_WARN_ON(&(__i915)->drm, INTEL_DISPLAY_STEP(__i915) == STEP_NONE), \
> -	 INTEL_DISPLAY_STEP(__i915) >= (since) && INTEL_DISPLAY_STEP(__i915) < (until))
> -
>  #define IS_GRAPHICS_STEP(__i915, since, until) \
>  	(drm_WARN_ON(&(__i915)->drm, INTEL_GRAPHICS_STEP(__i915) == STEP_NONE), \
>  	 INTEL_GRAPHICS_STEP(__i915) >= (since) && INTEL_GRAPHICS_STEP(__i915) < (until))
> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c
> index d26de37719a7..8b3e44dd504c 100644
> --- a/drivers/gpu/drm/i915/intel_device_info.c
> +++ b/drivers/gpu/drm/i915/intel_device_info.c
> @@ -108,7 +108,6 @@ void intel_device_info_print(const struct intel_device_info *info,
>  
>  	drm_printf(p, "graphics stepping: %s\n", intel_step_name(runtime->step.graphics_step));
>  	drm_printf(p, "media stepping: %s\n", intel_step_name(runtime->step.media_step));
> -	drm_printf(p, "display stepping: %s\n", intel_step_name(runtime->step.display_step));
>  	drm_printf(p, "base die stepping: %s\n", intel_step_name(runtime->step.basedie_step));
>  
>  	drm_printf(p, "gt: %d\n", info->gt);
> diff --git a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
> index 7492979ac3bc..97be452f003b 100644
> --- a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
> +++ b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
> @@ -80,11 +80,6 @@ static inline struct drm_i915_private *kdev_to_i915(struct device *kdev)
>  
>  #define IS_MOBILE(xe) (xe && 0)
>  
> -#define INTEL_DISPLAY_STEP(xe) ((xe)->info.step.display)
> -
> -/* Workarounds not handled yet */
> -#define IS_DISPLAY_STEP(xe, first, last) ({u8 __step = (xe)->info.step.display; first <= __step && __step < last; })
> -
>  #define IS_LP(xe) (0)
>  #define IS_GEN9_LP(xe) (0)
>  #define IS_GEN9_BC(xe) (0)
> -- 
> 2.39.2
> 

-- 
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation


More information about the Intel-gfx mailing list