xref: /linux/drivers/gpu/drm/xe/Kconfig.debug (revision 570f7e331f5febb30f1384817463c7e42b65ca7d)
1# SPDX-License-Identifier: GPL-2.0-only
2config DRM_XE_WERROR
3	bool "Force GCC to throw an error instead of a warning when compiling"
4	# As this may inadvertently break the build, only allow the user
5	# to shoot oneself in the foot iff they aim really hard
6	depends on EXPERT
7	# We use the dependency on !COMPILE_TEST to not be enabled in
8	# allmodconfig or allyesconfig configurations
9	depends on !COMPILE_TEST
10	default n
11	help
12	  Add -Werror to the build flags for (and only for) xe.ko.
13	  Do not enable this unless you are writing code for the xe.ko module.
14
15	  Recommended for driver developers only.
16
17	  If in doubt, say "N".
18
19config DRM_XE_DEBUG
20	bool "Enable additional driver debugging"
21	depends on DRM_XE
22	depends on EXPERT
23	depends on !COMPILE_TEST
24	default n
25	help
26	  Choose this option to turn on extra driver debugging that may affect
27	  performance but will catch some internal issues.
28
29	  Recommended for driver developers only.
30
31	  If in doubt, say "N".
32
33config DRM_XE_DEBUG_VM
34	bool "Enable extra VM debugging info"
35	default n
36	help
37	  Enable extra VM debugging info
38
39	  Recommended for driver developers only.
40
41	  If in doubt, say "N".
42
43config DRM_XE_DEBUG_SRIOV
44	bool "Enable extra SR-IOV debugging"
45	default n
46	imply DRM_XE_DEBUG_MEMIRQ
47	help
48	  Enable extra SR-IOV debugging info.
49
50	  Recommended for driver developers only.
51
52	  If in doubt, say "N".
53
54config DRM_XE_DEBUG_MEMIRQ
55	bool "Enable extra memirq debugging"
56	default n
57	help
58	  Choose this option to enable additional debugging info for
59	  memory based interrupts.
60
61	  Recommended for driver developers only.
62
63	  If in doubt, say "N".
64
65config DRM_XE_DEBUG_MEM
66	bool "Enable passing SYS/VRAM addresses to user space"
67	default n
68	help
69	  Pass object location through uapi. Intended for extended
70	  testing and development only.
71
72	  Recommended for driver developers only.
73
74	  If in doubt, say "N".
75
76config DRM_XE_KUNIT_TEST
77        tristate "KUnit tests for the drm xe driver" if !KUNIT_ALL_TESTS
78	depends on DRM_XE && KUNIT && DEBUG_FS
79	default KUNIT_ALL_TESTS
80	select DRM_EXPORT_FOR_TESTS if m
81	help
82	  Choose this option to allow the driver to perform selftests under
83	  the kunit framework
84
85	  Recommended for driver developers only.
86
87	  If in doubt, say "N".
88
89config DRM_XE_DEBUG_PAGE_SIZE
90	bool "Enable debug control for user BO page-size allocation"
91	depends on DRM_XE_DEBUG && DEBUG_FS
92	help
93	  Expose a debugfs knob to override user BO page-size allocation
94	  handling for validation and debug. Supported modes include forced
95	  2M, forced 1G, and a mixed mode that exercises 4K, 64K, 2M, and
96	  1G page-size paths on platforms that support them.
97
98	  This is an unstable debugfs interface intended for development and
99	  validation only. Its layout, contents, and existence may change or
100	  be removed at any time with no regression warranty.
101
102	  Recommended for driver developers only.
103	  If in doubt, say "N".
104
105config DRM_XE_DEBUG_GUC
106        bool "Enable extra GuC related debug options"
107        depends on DRM_XE_DEBUG
108        default n
109        select STACKDEPOT
110        help
111          Choose this option when debugging guc issues.
112          The GuC log buffer is increased to the maximum allowed, which should
113          be large enough for complex issues. The tracking of FAST_REQ messages
114          is extended to include a record of the calling stack, which is then
115          dumped on a FAST_REQ error notification.
116
117          Recommended for driver developers only.
118
119          If in doubt, say "N".
120
121config DRM_XE_USERPTR_INVAL_INJECT
122       bool "Inject userptr invalidation -EINVAL errors"
123       depends on DRM_GPUSVM
124       default n
125       help
126         Choose this option when debugging error paths that
127	 are hit during checks for userptr invalidations.
128
129	 Recommended for driver developers only.
130	 If in doubt, say "N".
131