[Intel-xe] [PATCH v4 00/21] Dump + OOB workarounds
Lucas De Marchi
lucas.demarchi at intel.com
Thu May 25 21:33:46 UTC 2023
May the fourth be with the workarounds.
Fourth version of the OOB workarounds.
Previous version can be seen here:
https://lore.kernel.org/intel-xe/20230516221950.3512818-1-lucas.demarchi@intel.com/
Changes in v4:
- All workarounds are now tracked per gt instead of per device. This
helps supporting new platforms with different types of GTs
- Split the last commit to be per (group of) workaround. Original
intention was to just port the workarounds over to the new infra
using the same conditions as was originally in the code. As
demonstrated by v3 and the commits here, the conditions currently
there can't be trusted much.
- Add commit to fix build with M=drivers/gpu/drm/xe/ since it has a
side-effect of not including the $(obj) in the include search path.
- Properly convert Wa_14014475959 using IP versions. This is currently
working for DG2, but I couldn't really test on MTL. We may want to
postpone the last 2 commits to when xe is properly loading in MTL.
Using a DG2 platform for test:
XE_DG2 G12 56b2:0001 dgfx:1 gfx:Xe_HPG (12.55) media:Xe_HPM (12.55) ...
Stepping = (G:A1, M:A1, D:C0, B:**)
Output:
# cat gt0/workarounds
GT Workarounds
14014830051
14015795083
18018781329
1509235366
14010648519
Engine Workarounds
14010826681, 1606700617, 22010271021, 18019627453
22013037850
22014226127
18017747507
14015227452
16015675438
16011620976, 22015475538
1509727124
22012856258
22010960976, 14013347512
1608949956, 14010198302
LRC Workarounds
16013271637
14014947963
18018764978
15010599737
18019271663
OOB Workarounds
14014475959
22011391025
14012197797
16015675438
18020744125
Eventually we may want to add a node in debugfs to consolidate the WAs
for all GTs, but that is not currently needed.
Lucas De Marchi (21):
drm/xe: Fix Wa_22011802037 annotation
drm/xe/rtp: Split rtp process initialization
drm/xe/rtp: Replace XE_WARN_ON
drm/xe/rtp: Add "_sr" to entry/function names
drm/xe/rtp: Allow to track active workarounds
drm/xe/wa: Track gt/engine/lrc active workarounds
drm/xe/debugfs: Dump active workarounds
drm/xe/rtp: Rename STEP to GRAPHICS_STEP
drm/xe/rtp: Add check for media stepping
drm/xe/rtp: Add support for entries with no action
drm/xe: Include build directory
drm/xe: Add support for OOB workarounds
drm/xe/guc: Port Wa_22012773006 to xe_wa
drm/xe/guc: Port Wa_16011759253 to xe_wa
drm/xe/guc: Port Wa_14012197797/Wa_22011391025 to xe_wa
drm/xe/guc: Port Wa_16011777198 to xe_wa
drm/xe/guc: Port Wa_22012727170/Wa_22012727685 to xe_wa
drm/xe/guc: Port Wa_16015675438/Wa_18020744125 to xe_wa
drm/xe/guc: Port Wa_1509372804 to xe_wa
drm/xe/rtp: Also check gt type
drm/xe/guc: Port Wa_14014475959 to xe_wa and fix it
drivers/gpu/drm/xe/Makefile | 16 +-
drivers/gpu/drm/xe/tests/xe_rtp_test.c | 23 +--
drivers/gpu/drm/xe/xe_gen_wa_oob.c | 164 ++++++++++++++++++++
drivers/gpu/drm/xe/xe_gt.c | 6 +
drivers/gpu/drm/xe/xe_gt_debugfs.c | 12 ++
drivers/gpu/drm/xe/xe_gt_types.h | 12 ++
drivers/gpu/drm/xe/xe_guc.c | 49 ++----
drivers/gpu/drm/xe/xe_hw_engine.c | 10 +-
drivers/gpu/drm/xe/xe_reg_whitelist.c | 6 +-
drivers/gpu/drm/xe/xe_rtp.c | 207 ++++++++++++++++++++-----
drivers/gpu/drm/xe/xe_rtp.h | 63 ++++++--
drivers/gpu/drm/xe/xe_rtp_types.h | 29 +++-
drivers/gpu/drm/xe/xe_tuning.c | 12 +-
drivers/gpu/drm/xe/xe_wa.c | 172 +++++++++++++++-----
drivers/gpu/drm/xe/xe_wa.h | 12 ++
drivers/gpu/drm/xe/xe_wa_oob.rules | 16 ++
16 files changed, 662 insertions(+), 147 deletions(-)
create mode 100644 drivers/gpu/drm/xe/xe_gen_wa_oob.c
create mode 100644 drivers/gpu/drm/xe/xe_wa_oob.rules
--
2.40.1
More information about the Intel-xe
mailing list