1 /* SPDX-License-Identifier: MIT */
2 /*
3 * Copyright © 2023 Intel Corporation
4 */
5
6 #ifndef _XE_DEVCOREDUMP_H_
7 #define _XE_DEVCOREDUMP_H_
8
9 #include <linux/types.h>
10
11 struct drm_printer;
12 struct xe_device;
13 struct xe_exec_queue;
14 struct xe_sched_job;
15
16 #ifdef CONFIG_DEV_COREDUMP
17 void xe_devcoredump(struct xe_exec_queue *q, struct xe_sched_job *job, const char *fmt, ...);
18 int xe_devcoredump_init(struct xe_device *xe);
19 #else
xe_devcoredump(struct xe_exec_queue * q,struct xe_sched_job * job,const char * fmt,...)20 static inline void xe_devcoredump(struct xe_exec_queue *q,
21 struct xe_sched_job *job,
22 const char *fmt, ...)
23 {
24 }
25
xe_devcoredump_init(struct xe_device * xe)26 static inline int xe_devcoredump_init(struct xe_device *xe)
27 {
28 return 0;
29 }
30 #endif
31
32 void xe_print_blob_ascii85(struct drm_printer *p, const char *prefix, char suffix,
33 const void *blob, size_t offset, size_t size);
34
35 #endif
36