[PATCH v4 0/9] drm/xe/guc: Add GuC based register capture for error capture
Zhanjun Dong
zhanjun.dong at intel.com
Mon Jan 22 21:25:48 UTC 2024
Port GuC based register capture for error capture from i915 to Xe.
There are 3 parts in this commit:
. Prepare for capture registers
There is a bo create at guc ads init time, that is very early
and engine map is not ready, make it hard to calculate the
capture buffer size, new function created for worst case size
caluation. Other than that, this part basically follows the i915
design.
. Process capture notification message
Basically follows i915 design
. Sysfs command process.
Xe switched to devcoredump, adopted command line process with
captured node list.
Signed-off-by: Zhanjun Dong <zhanjun.dong at intel.com>
Changes from prior revs:
v4:- Move register map table to xe_hw_engine.c
v3:- Remove condition compilation in code
v2:- Split into multiple chunks
Zhanjun Dong (9):
drm/xe/guc: Add register defines for GuC based register capture
drm/xe/guc: Expose dss per group for GuC error capture
drm/xe/guc: Update GuC ADS size for error capture
drm/xe/guc: Add XE_LP steered register lists
drm/xe/guc: Add capture size check in GuC log buffer
drm/xe/guc: Check sizing of guc_capture output
drm/xe/guc: Extract GuC error capture lists on G2H notification
drm/xe/guc: Pre-allocate output nodes for extraction
drm/xe/guc: Plumb GuC-capture into dev coredump
drivers/gpu/drm/xe/Kconfig | 11 +
drivers/gpu/drm/xe/Makefile | 1 +
drivers/gpu/drm/xe/abi/guc_actions_abi.h | 7 +
drivers/gpu/drm/xe/regs/xe_engine_regs.h | 12 +
drivers/gpu/drm/xe/regs/xe_gt_regs.h | 20 +
drivers/gpu/drm/xe/xe_gt_mcr.c | 2 +-
drivers/gpu/drm/xe/xe_gt_mcr.h | 3 +
drivers/gpu/drm/xe/xe_gt_printk.h | 3 +
drivers/gpu/drm/xe/xe_gt_topology.c | 3 -
drivers/gpu/drm/xe/xe_guc.c | 6 +
drivers/gpu/drm/xe/xe_guc_ads.c | 226 +++-
drivers/gpu/drm/xe/xe_guc_ads_types.h | 2 +
drivers/gpu/drm/xe/xe_guc_capture.c | 1398 ++++++++++++++++++++++
drivers/gpu/drm/xe/xe_guc_capture.h | 21 +
drivers/gpu/drm/xe/xe_guc_capture_fwif.h | 222 ++++
drivers/gpu/drm/xe/xe_guc_ct.c | 2 +
drivers/gpu/drm/xe/xe_guc_fwif.h | 68 ++
drivers/gpu/drm/xe/xe_guc_log.c | 179 +++
drivers/gpu/drm/xe/xe_guc_log.h | 15 +
drivers/gpu/drm/xe/xe_guc_log_types.h | 26 +
drivers/gpu/drm/xe/xe_guc_submit.c | 22 +-
drivers/gpu/drm/xe/xe_guc_submit.h | 3 +
drivers/gpu/drm/xe/xe_guc_types.h | 2 +
drivers/gpu/drm/xe/xe_hw_engine.c | 173 ++-
drivers/gpu/drm/xe/xe_hw_engine.h | 4 +
drivers/gpu/drm/xe/xe_hw_engine_types.h | 111 +-
26 files changed, 2438 insertions(+), 104 deletions(-)
create mode 100644 drivers/gpu/drm/xe/xe_guc_capture.c
create mode 100644 drivers/gpu/drm/xe/xe_guc_capture.h
create mode 100644 drivers/gpu/drm/xe/xe_guc_capture_fwif.h
--
2.34.1
More information about the Intel-xe
mailing list