Commit 83dbd74f authored by Aditya Swarup's avatar Aditya Swarup Committed by Lucas De Marchi

drm/i915/tgl: Fix REVID macros for TGL to fetch correct stepping

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: c33298cb ("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: default avatarAditya Swarup <aditya.swarup@intel.com>
Reviewed-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201203072359.156682-1-aditya.swarup@intel.com
parent 8c3b1ba0
...@@ -1575,9 +1575,9 @@ static inline const struct i915_rev_steppings * ...@@ -1575,9 +1575,9 @@ static inline const struct i915_rev_steppings *
tgl_revids_get(struct drm_i915_private *dev_priv) tgl_revids_get(struct drm_i915_private *dev_priv)
{ {
if (IS_TGL_U(dev_priv) || IS_TGL_Y(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 else
return tgl_revids; return &tgl_revids[INTEL_REVID(dev_priv)];
} }
#define IS_TGL_DISP_REVID(p, since, until) \ #define IS_TGL_DISP_REVID(p, since, until) \
...@@ -1587,14 +1587,14 @@ tgl_revids_get(struct drm_i915_private *dev_priv) ...@@ -1587,14 +1587,14 @@ tgl_revids_get(struct drm_i915_private *dev_priv)
#define IS_TGL_UY_GT_REVID(p, since, until) \ #define IS_TGL_UY_GT_REVID(p, since, until) \
((IS_TGL_U(p) || IS_TGL_Y(p)) && \ ((IS_TGL_U(p) || IS_TGL_Y(p)) && \
tgl_uy_revids->gt_stepping >= (since) && \ tgl_uy_revids[INTEL_REVID(p)].gt_stepping >= (since) && \
tgl_uy_revids->gt_stepping <= (until)) tgl_uy_revids[INTEL_REVID(p)].gt_stepping <= (until))
#define IS_TGL_GT_REVID(p, since, until) \ #define IS_TGL_GT_REVID(p, since, until) \
(IS_TIGERLAKE(p) && \ (IS_TIGERLAKE(p) && \
!(IS_TGL_U(p) || IS_TGL_Y(p)) && \ !(IS_TGL_U(p) || IS_TGL_Y(p)) && \
tgl_revids->gt_stepping >= (since) && \ tgl_revids[INTEL_REVID(p)].gt_stepping >= (since) && \
tgl_revids->gt_stepping <= (until)) tgl_revids[INTEL_REVID(p)].gt_stepping <= (until))
#define RKL_REVID_A0 0x0 #define RKL_REVID_A0 0x0
#define RKL_REVID_B0 0x1 #define RKL_REVID_B0 0x1
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment