mirror of
https://github.com/torvalds/linux.git
synced 2026-05-13 00:28:54 +02:00
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:7f3ee7d880("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 commite04c609eed) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
This commit is contained in:
parent
4a9b4e1fa5
commit
bc6387a2e0
|
|
@ -548,16 +548,6 @@ static const struct xe_rtp_entry_sr engine_was[] = {
|
|||
FUNC(xe_rtp_match_first_render_or_compute)),
|
||||
XE_RTP_ACTIONS(SET(ROW_CHICKEN, EARLY_EOT_DIS))
|
||||
},
|
||||
{ XE_RTP_NAME("14019988906"),
|
||||
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
|
||||
FUNC(xe_rtp_match_first_render_or_compute)),
|
||||
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FLSH_IGNORES_PSD))
|
||||
},
|
||||
{ XE_RTP_NAME("14019877138"),
|
||||
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
|
||||
FUNC(xe_rtp_match_first_render_or_compute)),
|
||||
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FD_END_COLLECT))
|
||||
},
|
||||
{ XE_RTP_NAME("14020338487"),
|
||||
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002),
|
||||
FUNC(xe_rtp_match_first_render_or_compute)),
|
||||
|
|
@ -833,6 +823,14 @@ static const struct xe_rtp_entry_sr lrc_was[] = {
|
|||
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
|
||||
XE_RTP_ACTIONS(SET(WM_CHICKEN3, HIZ_PLANE_COMPRESSION_DIS))
|
||||
},
|
||||
{ XE_RTP_NAME("14019988906"),
|
||||
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002), ENGINE_CLASS(RENDER)),
|
||||
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FLSH_IGNORES_PSD))
|
||||
},
|
||||
{ XE_RTP_NAME("14019877138"),
|
||||
XE_RTP_RULES(GRAPHICS_VERSION_RANGE(2001, 2002), ENGINE_CLASS(RENDER)),
|
||||
XE_RTP_ACTIONS(SET(XEHP_PSS_CHICKEN, FD_END_COLLECT))
|
||||
},
|
||||
{ XE_RTP_NAME("14021490052"),
|
||||
XE_RTP_RULES(GRAPHICS_VERSION(2001), ENGINE_CLASS(RENDER)),
|
||||
XE_RTP_ACTIONS(SET(FF_MODE,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user