Skip to content

Commit a5d2219

Browse files
shekhar-chauhanmattrope
authored andcommitted
drm/xe/xe2_hpg: Add set of workarounds
Add set of workarounds for xe2_hpg. -v2: Fix xe2_hpg GMD version for some workarounds. -v3: Removed extra Workaround (Matt Roper) Signed-off-by: Shekhar Chauhan <shekhar.chauhan@intel.com> Signed-off-by: Dnyaneshwar Bhadane <dnyaneshwar.bhadane@intel.com> Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Matt Roper <matthew.d.roper@intel.com> Link: https://lore.kernel.org/r/20250605190804.1287289-3-dnyaneshwar.bhadane@intel.com
1 parent 9b779ff commit a5d2219

File tree

2 files changed

+29
-21
lines changed

2 files changed

+29
-21
lines changed

drivers/gpu/drm/xe/xe_wa.c

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -503,10 +503,6 @@ static const struct xe_rtp_entry_sr engine_was[] = {
503503
XE_RTP_RULES(GRAPHICS_VERSION(2004), FUNC(xe_rtp_match_first_render_or_compute)),
504504
XE_RTP_ACTIONS(SET(LSC_CHICKEN_BIT_0_UDW, ENABLE_SMP_LD_RENDER_SURFACE_CONTROL))
505505
},
506-
{ XE_RTP_NAME("16018737384"),
507-
XE_RTP_RULES(GRAPHICS_VERSION(2004), FUNC(xe_rtp_match_first_render_or_compute)),
508-
XE_RTP_ACTIONS(SET(ROW_CHICKEN, EARLY_EOT_DIS))
509-
},
510506
/*
511507
* These two workarounds are the same, just applying to different
512508
* engines. Although Wa_18032095049 (for the RCS) isn't required on
@@ -533,31 +529,38 @@ static const struct xe_rtp_entry_sr engine_was[] = {
533529
/* Xe2_HPG */
534530

535531
{ XE_RTP_NAME("16018712365"),
536-
XE_RTP_RULES(GRAPHICS_VERSION(2001), FUNC(xe_rtp_match_first_render_or_compute)),
532+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
533+
FUNC(xe_rtp_match_first_render_or_compute)),
537534
XE_RTP_ACTIONS(SET(LSC_CHICKEN_BIT_0_UDW, XE2_ALLOC_DPA_STARVE_FIX_DIS))
538535
},
539536
{ XE_RTP_NAME("16018737384"),
540-
XE_RTP_RULES(GRAPHICS_VERSION(2001), FUNC(xe_rtp_match_first_render_or_compute)),
537+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, XE_RTP_END_VERSION_UNDEFINED),
538+
FUNC(xe_rtp_match_first_render_or_compute)),
541539
XE_RTP_ACTIONS(SET(ROW_CHICKEN, EARLY_EOT_DIS))
542540
},
543541
{ XE_RTP_NAME("14019988906"),
544-
XE_RTP_RULES(GRAPHICS_VERSION(2001), FUNC(xe_rtp_match_first_render_or_compute)),
542+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
543+
FUNC(xe_rtp_match_first_render_or_compute)),
545544
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FLSH_IGNORES_PSD))
546545
},
547546
{ XE_RTP_NAME("14019877138"),
548-
XE_RTP_RULES(GRAPHICS_VERSION(2001), FUNC(xe_rtp_match_first_render_or_compute)),
547+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
548+
FUNC(xe_rtp_match_first_render_or_compute)),
549549
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FD_END_COLLECT))
550550
},
551551
{ XE_RTP_NAME("14020338487"),
552-
XE_RTP_RULES(GRAPHICS_VERSION(2001), FUNC(xe_rtp_match_first_render_or_compute)),
552+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
553+
FUNC(xe_rtp_match_first_render_or_compute)),
553554
XE_RTP_ACTIONS(SET(ROW_CHICKEN3, XE2_EUPEND_CHK_FLUSH_DIS))
554555
},
555556
{ XE_RTP_NAME("18032247524"),
556-
XE_RTP_RULES(GRAPHICS_VERSION(2001), FUNC(xe_rtp_match_first_render_or_compute)),
557+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
558+
FUNC(xe_rtp_match_first_render_or_compute)),
557559
XE_RTP_ACTIONS(SET(LSC_CHICKEN_BIT_0, SEQUENTIAL_ACCESS_UPGRADE_DISABLE))
558560
},
559561
{ XE_RTP_NAME("14018471104"),
560-
XE_RTP_RULES(GRAPHICS_VERSION(2001), FUNC(xe_rtp_match_first_render_or_compute)),
562+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
563+
FUNC(xe_rtp_match_first_render_or_compute)),
561564
XE_RTP_ACTIONS(SET(LSC_CHICKEN_BIT_0_UDW, ENABLE_SMP_LD_RENDER_SURFACE_CONTROL))
562565
},
563566
/*
@@ -566,7 +569,7 @@ static const struct xe_rtp_entry_sr engine_was[] = {
566569
* apply this to all engines for simplicity.
567570
*/
568571
{ XE_RTP_NAME("16021639441"),
569-
XE_RTP_RULES(GRAPHICS_VERSION(2001)),
572+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002)),
570573
XE_RTP_ACTIONS(SET(CSFE_CHICKEN1(0),
571574
GHWSP_CSB_REPORT_DIS |
572575
PPHWSP_CSB_AND_TIMESTAMP_REPORT_DIS,
@@ -578,11 +581,12 @@ static const struct xe_rtp_entry_sr engine_was[] = {
578581
XE_RTP_ACTIONS(SET(LSC_CHICKEN_BIT_0, WR_REQ_CHAINING_DIS))
579582
},
580583
{ XE_RTP_NAME("14021402888"),
581-
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
584+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002), ENGINE_CLASS(RENDER)),
582585
XE_RTP_ACTIONS(SET(HALF_SLICE_CHICKEN7, CLEAR_OPTIMIZATION_DISABLE))
583586
},
584-
{ XE_RTP_NAME("14021821874"),
585-
XE_RTP_RULES(GRAPHICS_VERSION(2001), FUNC(xe_rtp_match_first_render_or_compute)),
587+
{ XE_RTP_NAME("14021821874, 14022954250"),
588+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
589+
FUNC(xe_rtp_match_first_render_or_compute)),
586590
XE_RTP_ACTIONS(SET(TDL_TSL_CHICKEN, STK_ID_RESTRICT))
587591
},
588592

@@ -774,7 +778,7 @@ static const struct xe_rtp_entry_sr lrc_was[] = {
774778
XE_RTP_ACTIONS(SET(INSTPM(RENDER_RING_BASE), ENABLE_SEMAPHORE_POLL_BIT))
775779
},
776780
{ XE_RTP_NAME("18033852989"),
777-
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2004), ENGINE_CLASS(RENDER)),
781+
XE_RTP_RULES(GRAPHICS_VERSION(2004), ENGINE_CLASS(RENDER)),
778782
XE_RTP_ACTIONS(SET(COMMON_SLICE_CHICKEN1, DISABLE_BOTTOM_CLIP_RECTANGLE_TEST))
779783
},
780784
{ XE_RTP_NAME("14021567978"),
@@ -807,7 +811,7 @@ static const struct xe_rtp_entry_sr lrc_was[] = {
807811
XE_RTP_ACTIONS(SET(CHICKEN_RASTER_1, DIS_SF_ROUND_NEAREST_EVEN))
808812
},
809813
{ XE_RTP_NAME("14019386621"),
810-
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
814+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002), ENGINE_CLASS(RENDER)),
811815
XE_RTP_ACTIONS(SET(VF_SCRATCHPAD, XE2_VFG_TED_CREDIT_INTERFACE_DISABLE))
812816
},
813817
{ XE_RTP_NAME("14020756599"),
@@ -824,13 +828,17 @@ static const struct xe_rtp_entry_sr lrc_was[] = {
824828
DIS_AUTOSTRIP))
825829
},
826830
{ XE_RTP_NAME("15016589081"),
827-
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
831+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002), ENGINE_CLASS(RENDER)),
828832
XE_RTP_ACTIONS(SET(CHICKEN_RASTER_1, DIS_CLIP_NEGATIVE_BOUNDING_BOX))
829833
},
830834
{ XE_RTP_NAME("22021007897"),
831-
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
835+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002), ENGINE_CLASS(RENDER)),
832836
XE_RTP_ACTIONS(SET(COMMON_SLICE_CHICKEN4, SBE_PUSH_CONSTANT_BEHIND_FIX_ENABLE))
833837
},
838+
{ XE_RTP_NAME("18033852989"),
839+
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
840+
XE_RTP_ACTIONS(SET(COMMON_SLICE_CHICKEN1, DISABLE_BOTTOM_CLIP_RECTANGLE_TEST))
841+
},
834842

835843
/* Xe3_LPG */
836844
{ XE_RTP_NAME("14021490052"),

drivers/gpu/drm/xe/xe_wa_oob.rules

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@
3030
GRAPHICS_VERSION(2004)
3131
13011645652 GRAPHICS_VERSION(2004)
3232
GRAPHICS_VERSION(3001)
33-
14022293748 GRAPHICS_VERSION(2001)
33+
14022293748 GRAPHICS_VERSION_RANGE(2001, 2002)
3434
GRAPHICS_VERSION(2004)
3535
GRAPHICS_VERSION_RANGE(3000, 3001)
36-
22019794406 GRAPHICS_VERSION(2001)
36+
22019794406 GRAPHICS_VERSION_RANGE(2001, 2002)
3737
GRAPHICS_VERSION(2004)
3838
GRAPHICS_VERSION_RANGE(3000, 3001)
3939
22019338487 MEDIA_VERSION(2000)

0 commit comments

Comments
 (0)