[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