|
|
|
@@ -28,23 +28,17 @@
|
|
|
|
|
* use a macro to define these to make it easier to identify the platforms
|
|
|
|
|
* where the two steppings can deviate.
|
|
|
|
|
*/
|
|
|
|
|
#define COMMON_GT_MEDIA_STEP(x_) \
|
|
|
|
|
#define COMMON_STEP(x_) \
|
|
|
|
|
.graphics = STEP_##x_, \
|
|
|
|
|
.media = STEP_##x_
|
|
|
|
|
|
|
|
|
|
#define COMMON_STEP(x_) \
|
|
|
|
|
COMMON_GT_MEDIA_STEP(x_), \
|
|
|
|
|
.graphics = STEP_##x_, \
|
|
|
|
|
.media = STEP_##x_, \
|
|
|
|
|
.display = STEP_##x_
|
|
|
|
|
|
|
|
|
|
__diag_push();
|
|
|
|
|
__diag_ignore_all("-Woverride-init", "Allow field overrides in table");
|
|
|
|
|
|
|
|
|
|
/* Same GT stepping between tgl_uy_revids and tgl_revids don't mean the same HW */
|
|
|
|
|
static const struct xe_step_info tgl_revids[] = {
|
|
|
|
|
[0] = { COMMON_GT_MEDIA_STEP(A0), .display = STEP_B0 },
|
|
|
|
|
[1] = { COMMON_GT_MEDIA_STEP(B0), .display = STEP_D0 },
|
|
|
|
|
[0] = { COMMON_STEP(A0) },
|
|
|
|
|
[1] = { COMMON_STEP(B0) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info dg1_revids[] = {
|
|
|
|
@@ -53,49 +47,49 @@ static const struct xe_step_info dg1_revids[] = {
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info adls_revids[] = {
|
|
|
|
|
[0x0] = { COMMON_GT_MEDIA_STEP(A0), .display = STEP_A0 },
|
|
|
|
|
[0x1] = { COMMON_GT_MEDIA_STEP(A0), .display = STEP_A2 },
|
|
|
|
|
[0x4] = { COMMON_GT_MEDIA_STEP(B0), .display = STEP_B0 },
|
|
|
|
|
[0x8] = { COMMON_GT_MEDIA_STEP(C0), .display = STEP_B0 },
|
|
|
|
|
[0xC] = { COMMON_GT_MEDIA_STEP(D0), .display = STEP_C0 },
|
|
|
|
|
[0x0] = { COMMON_STEP(A0) },
|
|
|
|
|
[0x1] = { COMMON_STEP(A0) },
|
|
|
|
|
[0x4] = { COMMON_STEP(B0) },
|
|
|
|
|
[0x8] = { COMMON_STEP(C0) },
|
|
|
|
|
[0xC] = { COMMON_STEP(D0) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info adls_rpls_revids[] = {
|
|
|
|
|
[0x4] = { COMMON_GT_MEDIA_STEP(D0), .display = STEP_D0 },
|
|
|
|
|
[0xC] = { COMMON_GT_MEDIA_STEP(D0), .display = STEP_C0 },
|
|
|
|
|
[0x4] = { COMMON_STEP(D0) },
|
|
|
|
|
[0xC] = { COMMON_STEP(D0) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info adlp_revids[] = {
|
|
|
|
|
[0x0] = { COMMON_GT_MEDIA_STEP(A0), .display = STEP_A0 },
|
|
|
|
|
[0x4] = { COMMON_GT_MEDIA_STEP(B0), .display = STEP_B0 },
|
|
|
|
|
[0x8] = { COMMON_GT_MEDIA_STEP(C0), .display = STEP_C0 },
|
|
|
|
|
[0xC] = { COMMON_GT_MEDIA_STEP(C0), .display = STEP_D0 },
|
|
|
|
|
[0x0] = { COMMON_STEP(A0) },
|
|
|
|
|
[0x4] = { COMMON_STEP(B0) },
|
|
|
|
|
[0x8] = { COMMON_STEP(C0) },
|
|
|
|
|
[0xC] = { COMMON_STEP(C0) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info adlp_rpl_revids[] = {
|
|
|
|
|
[0x4] = { COMMON_GT_MEDIA_STEP(C0), .display = STEP_E0 },
|
|
|
|
|
[0x4] = { COMMON_STEP(C0) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info adln_revids[] = {
|
|
|
|
|
[0x0] = { COMMON_GT_MEDIA_STEP(A0), .display = STEP_D0 },
|
|
|
|
|
[0x0] = { COMMON_STEP(A0) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info dg2_g10_revid_step_tbl[] = {
|
|
|
|
|
[0x0] = { COMMON_GT_MEDIA_STEP(A0), .display = STEP_A0 },
|
|
|
|
|
[0x1] = { COMMON_GT_MEDIA_STEP(A1), .display = STEP_A0 },
|
|
|
|
|
[0x4] = { COMMON_GT_MEDIA_STEP(B0), .display = STEP_B0 },
|
|
|
|
|
[0x8] = { COMMON_GT_MEDIA_STEP(C0), .display = STEP_C0 },
|
|
|
|
|
[0x0] = { COMMON_STEP(A0) },
|
|
|
|
|
[0x1] = { COMMON_STEP(A1) },
|
|
|
|
|
[0x4] = { COMMON_STEP(B0) },
|
|
|
|
|
[0x8] = { COMMON_STEP(C0) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info dg2_g11_revid_step_tbl[] = {
|
|
|
|
|
[0x0] = { COMMON_GT_MEDIA_STEP(A0), .display = STEP_B0 },
|
|
|
|
|
[0x4] = { COMMON_GT_MEDIA_STEP(B0), .display = STEP_C0 },
|
|
|
|
|
[0x5] = { COMMON_GT_MEDIA_STEP(B1), .display = STEP_C0 },
|
|
|
|
|
[0x0] = { COMMON_STEP(A0) },
|
|
|
|
|
[0x4] = { COMMON_STEP(B0) },
|
|
|
|
|
[0x5] = { COMMON_STEP(B1) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info dg2_g12_revid_step_tbl[] = {
|
|
|
|
|
[0x0] = { COMMON_GT_MEDIA_STEP(A0), .display = STEP_C0 },
|
|
|
|
|
[0x1] = { COMMON_GT_MEDIA_STEP(A1), .display = STEP_C0 },
|
|
|
|
|
[0x0] = { COMMON_STEP(A0) },
|
|
|
|
|
[0x1] = { COMMON_STEP(A1) },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const struct xe_step_info pvc_revid_step_tbl[] = {
|
|
|
|
@@ -195,7 +189,6 @@ struct xe_step_info xe_step_pre_gmdid_get(struct xe_device *xe)
|
|
|
|
|
} else {
|
|
|
|
|
drm_dbg(&xe->drm, "Using future steppings\n");
|
|
|
|
|
step.graphics = STEP_FUTURE;
|
|
|
|
|
step.display = STEP_FUTURE;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|