Add GuC's error capture output structures and definitions as how they would appear in GuC log buffer's error capture subregion after an error state capture G2H event notification. Signed-off-by: Alan Previn <alan.previn.teres.alexis@xxxxxxxxx> --- .../gpu/drm/i915/gt/uc/intel_guc_capture.h | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_capture.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_capture.h index df420f0f49b3..b2454b6cd778 100644 --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_capture.h +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_capture.h @@ -29,6 +29,41 @@ struct __guc_mmio_reg_descr_group { struct __guc_mmio_reg_descr * ext; }; +struct intel_guc_capture_out_data_header { + u32 reserved1; + u32 info; + #define GUC_CAPTURE_DATAHDR_SRC_TYPE GENMASK(3, 0) /* as per enum guc_capture_type */ + #define GUC_CAPTURE_DATAHDR_SRC_CLASS GENMASK(7, 4) /* as per GUC_MAX_ENGINE_CLASSES */ + #define GUC_CAPTURE_DATAHDR_SRC_INSTANCE GENMASK(11, 8) + u32 lrca; /* if type-instance, LRCA (address) that hung, else set to ~0 */ + u32 guc_ctx_id; /* if type-instance, context index of hung context, else set to ~0 */ + u32 num_mmios; + #define GUC_CAPTURE_DATAHDR_NUM_MMIOS GENMASK(9, 0) +}; + +struct intel_guc_capture_out_data { + struct intel_guc_capture_out_data_header capture_header; + struct guc_mmio_reg capture_list[0]; +}; + +enum guc_capture_group_types { + GUC_STATE_CAPTURE_GROUP_TYPE_FULL, + GUC_STATE_CAPTURE_GROUP_TYPE_PARTIAL, + GUC_STATE_CAPTURE_GROUP_TYPE_MAX, +}; + +struct intel_guc_capture_out_group_header { + u32 reserved1; + u32 info; + #define GUC_CAPTURE_GRPHDR_SRC_NUMCAPTURES GENMASK(7, 0) + #define GUC_CAPTURE_GRPHDR_SRC_CAPTURE_TYPE GENMASK(15, 8) +}; + +struct intel_guc_capture_out_group { + struct intel_guc_capture_out_group_header group_header; + struct intel_guc_capture_out_data group_lists[0]; +}; + struct intel_guc_state_capture { struct __guc_mmio_reg_descr_group *reglists; u16 num_instance_regs[GUC_CAPTURE_LIST_INDEX_MAX][GUC_MAX_ENGINE_CLASSES]; -- 2.25.1