[Intel-gfx] [PATCH 1/2] drm/i915/tgl: Fix REVID macros for TGL to fetch correct stepping

Lucas De Marchi lucas.demarchi at intel.com
Thu Nov 26 07:20:18 UTC 2020


On Wed, Nov 25, 2020 at 11:00:40PM -0800, Aditya Swarup wrote:
>Fix TGL REVID macros to fetch correct display/gt stepping based
>on SOC rev id from INTEL_REVID() macro. Previously, we were just
>returning the first element of the revid array instead of using
>the correct index based on SOC rev id.
>
>Fixes: ("drm/i915/tgl: Fix stepping WA matching")
>Cc: José Roberto de Souza <jose.souza at intel.com>
>Cc: Matt Roper <matthew.d.roper at intel.com>
>Cc: Lucas De Marchi <lucas.demarchi at intel.com>
>Cc: Jani Nikula <jani.nikula at intel.com>
>Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
>Signed-off-by: Aditya Swarup <aditya.swarup at intel.com>


Reviewed-by: Lucas De Marchi <lucas.demarchi at intel.com>

Lucas De Marchi

>---
> drivers/gpu/drm/i915/i915_drv.h | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
>diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
>index 15be8debae54..0a3ee4f9dc0a 100644
>--- a/drivers/gpu/drm/i915/i915_drv.h
>+++ b/drivers/gpu/drm/i915/i915_drv.h
>@@ -1579,9 +1579,9 @@ static inline const struct i915_rev_steppings *
> tgl_revids_get(struct drm_i915_private *dev_priv)
> {
> 	if (IS_TGL_U(dev_priv) || IS_TGL_Y(dev_priv))
>-		return tgl_uy_revids;
>+		return &tgl_uy_revids[INTEL_REVID(dev_priv)];
> 	else
>-		return tgl_revids;
>+		return &tgl_revids[INTEL_REVID(dev_priv)];
> }
>
> #define IS_TGL_DISP_REVID(p, since, until) \
>@@ -1591,14 +1591,14 @@ tgl_revids_get(struct drm_i915_private *dev_priv)
>
> #define IS_TGL_UY_GT_REVID(p, since, until) \
> 	((IS_TGL_U(p) || IS_TGL_Y(p)) && \
>-	 tgl_uy_revids->gt_stepping >= (since) && \
>-	 tgl_uy_revids->gt_stepping <= (until))
>+	 tgl_uy_revids[INTEL_REVID(p)].gt_stepping >= (since) && \
>+	 tgl_uy_revids[INTEL_REVID(p)].gt_stepping <= (until))
>
> #define IS_TGL_GT_REVID(p, since, until) \
> 	(IS_TIGERLAKE(p) && \
> 	 !(IS_TGL_U(p) || IS_TGL_Y(p)) && \
>-	 tgl_revids->gt_stepping >= (since) && \
>-	 tgl_revids->gt_stepping <= (until))
>+	 tgl_revids[INTEL_REVID(p)].gt_stepping >= (since) && \
>+	 tgl_revids[INTEL_REVID(p)].gt_stepping <= (until))
>
> #define RKL_REVID_A0		0x0
> #define RKL_REVID_B0		0x1
>-- 
>2.27.0
>


More information about the Intel-gfx mailing list