Skip to content

Commit bc6387a

Browse files
mattroperodrigovivi
authored andcommitted
drm/xe/xe2_hpg: Fix handling of Wa_14019988906 & Wa_14019877138
The PSS_CHICKEN register has been part of the RCS engine's LRC since it was first introduced in Xe_LP. That means that any workarounds that adjust its value (such as Wa_14019988906 and Wa_14019877138) need to be implemented in the lrc_was[] table so that they become part of the default LRC from which all subsequent LRCs are copied. Although these workarounds were implemented correctly on most platforms, they were incorrectly placed on the engine_was[] table for Xe2_HPG. Move the workarounds to the proper lrc_was[] table and switch the 'xe_rtp_match_first_render_or_compute' rule to specifically match the RCS since that's the engine whose LRC manages the register. Bspec: 65182 Fixes: 7f3ee7d ("drm/xe/xe2hpg: Add initial GT workarounds") Reviewed-by: Shekhar Chauhan <shekhar.chauhan@intel.com> Link: https://patch.msgid.link/20260205220508.51905-2-matthew.d.roper@intel.com Signed-off-by: Matt Roper <matthew.d.roper@intel.com> (cherry picked from commit e04c609) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
1 parent 4a9b4e1 commit bc6387a

1 file changed

Lines changed: 8 additions & 10 deletions

File tree

drivers/gpu/drm/xe/xe_wa.c

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -548,16 +548,6 @@ static const struct xe_rtp_entry_sr engine_was[] = {
548548
FUNC(xe_rtp_match_first_render_or_compute)),
549549
XE_RTP_ACTIONS(SET(ROW_CHICKEN, EARLY_EOT_DIS))
550550
},
551-
{ XE_RTP_NAME("14019988906"),
552-
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
553-
FUNC(xe_rtp_match_first_render_or_compute)),
554-
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FLSH_IGNORES_PSD))
555-
},
556-
{ XE_RTP_NAME("14019877138"),
557-
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
558-
FUNC(xe_rtp_match_first_render_or_compute)),
559-
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FD_END_COLLECT))
560-
},
561551
{ XE_RTP_NAME("14020338487"),
562552
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
563553
FUNC(xe_rtp_match_first_render_or_compute)),
@@ -833,6 +823,14 @@ static const struct xe_rtp_entry_sr lrc_was[] = {
833823
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
834824
XE_RTP_ACTIONS(SET(WM_CHICKEN3, HIZ_PLANE_COMPRESSION_DIS))
835825
},
826+
{ XE_RTP_NAME("14019988906"),
827+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002), ENGINE_CLASS(RENDER)),
828+
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FLSH_IGNORES_PSD))
829+
},
830+
{ XE_RTP_NAME("14019877138"),
831+
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002), ENGINE_CLASS(RENDER)),
832+
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FD_END_COLLECT))
833+
},
836834
{ XE_RTP_NAME("14021490052"),
837835
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
838836
XE_RTP_ACTIONS(SET(FF_MODE,

0 commit comments

Comments
 (0)