diff mbox series

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

Message ID 20201126070041.369530-1-aditya.swarup@intel.com (mailing list archive)
State New, archived
Headers show
Series [1/2] drm/i915/tgl: Fix REVID macros for TGL to fetch correct stepping | expand

Commit Message

Aditya Swarup Nov. 26, 2020, 7 a.m. UTC
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@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com>
---
 drivers/gpu/drm/i915/i915_drv.h | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Comments

Lucas De Marchi Nov. 26, 2020, 7:20 a.m. UTC | #1
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@intel.com>
>Cc: Matt Roper <matthew.d.roper@intel.com>
>Cc: Lucas De Marchi <lucas.demarchi@intel.com>
>Cc: Jani Nikula <jani.nikula@intel.com>
>Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
>Signed-off-by: Aditya Swarup <aditya.swarup@intel.com>


Reviewed-by: Lucas De Marchi <lucas.demarchi@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
>
diff mbox series

Patch

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