8c7972df9f0fcb13709d8f965f8e9dcb9371f853
[sfrench/cifs-2.6.git] / drivers / gpu / drm / i915 / Kconfig.debug
1 config DRM_I915_WERROR
2         bool "Force GCC to throw an error instead of a warning when compiling"
3         # As this may inadvertently break the build, only allow the user
4         # to shoot oneself in the foot iff they aim really hard
5         depends on EXPERT
6         # We use the dependency on !COMPILE_TEST to not be enabled in
7         # allmodconfig or allyesconfig configurations
8         depends on !COMPILE_TEST
9         default n
10         help
11           Add -Werror to the build flags for (and only for) i915.ko.
12           Do not enable this unless you are writing code for the i915.ko module.
13
14           Recommended for driver developers only.
15
16           If in doubt, say "N".
17
18 config DRM_I915_DEBUG
19         bool "Enable additional driver debugging"
20         depends on DRM_I915
21         select DEBUG_FS
22         select PREEMPT_COUNT
23         select I2C_CHARDEV
24         select DRM_DP_AUX_CHARDEV
25         select X86_MSR # used by igt/pm_rpm
26         select DRM_VGEM # used by igt/prime_vgem (dmabuf interop checks)
27         select DRM_DEBUG_MM if DRM=y
28         select DRM_DEBUG_SELFTEST
29         select SW_SYNC # signaling validation framework (igt/syncobj*)
30         select DRM_I915_SW_FENCE_DEBUG_OBJECTS
31         select DRM_I915_SELFTEST
32         default n
33         help
34           Choose this option to turn on extra driver debugging that may affect
35           performance but will catch some internal issues.
36
37           Recommended for driver developers only.
38
39           If in doubt, say "N".
40
41 config DRM_I915_DEBUG_GEM
42         bool "Insert extra checks into the GEM internals"
43         default n
44         depends on DRM_I915_WERROR
45         help
46           Enable extra sanity checks (including BUGs) along the GEM driver
47           paths that may slow the system down and if hit hang the machine.
48
49           Recommended for driver developers only.
50
51           If in doubt, say "N".
52
53 config DRM_I915_TRACE_GEM
54         bool "Insert extra ftrace output from the GEM internals"
55         depends on DRM_I915_DEBUG_GEM
56         select TRACING
57         default n
58         help
59           Enable additional and verbose debugging output that will spam
60           ordinary tests, but may be vital for post-mortem debugging when
61           used with /proc/sys/kernel/ftrace_dump_on_oops
62
63           Recommended for driver developers only.
64
65           If in doubt, say "N".
66
67 config DRM_I915_SW_FENCE_DEBUG_OBJECTS
68         bool "Enable additional driver debugging for fence objects"
69         depends on DRM_I915
70         select DEBUG_OBJECTS
71         default n
72         help
73           Choose this option to turn on extra driver debugging that may affect
74           performance but will catch some internal issues.
75
76           Recommended for driver developers only.
77
78           If in doubt, say "N".
79
80 config DRM_I915_SW_FENCE_CHECK_DAG
81         bool "Enable additional driver debugging for detecting dependency cycles"
82         depends on DRM_I915
83         default n
84         help
85           Choose this option to turn on extra driver debugging that may affect
86           performance but will catch some internal issues.
87
88           Recommended for driver developers only.
89
90           If in doubt, say "N".
91
92 config DRM_I915_SELFTEST
93         bool "Enable selftests upon driver load"
94         depends on DRM_I915
95         default n
96         select FAULT_INJECTION
97         select PRIME_NUMBERS
98         help
99           Choose this option to allow the driver to perform selftests upon
100           loading; also requires the i915.selftest=1 module parameter. To
101           exit the module after running the selftests (i.e. to prevent normal
102           module initialisation afterwards) use i915.selftest=-1.
103
104           Recommended for driver developers only.
105
106           If in doubt, say "N".
107
108 config DRM_I915_SELFTEST_BROKEN
109         bool "Enable broken and dangerous selftests"
110         depends on DRM_I915_SELFTEST
111         depends on BROKEN
112         default n
113         help
114           This option enables the execution of selftests that are "dangerous"
115           and may trigger unintended HW side-effects as they break strict
116           rules given in the HW specification. For science.
117
118           Recommended for masochistic driver developers only.
119
120           If in doubt, say "N".
121
122 config DRM_I915_LOW_LEVEL_TRACEPOINTS
123         bool "Enable low level request tracing events"
124         depends on DRM_I915
125         default n
126         help
127           Choose this option to turn on low level request tracing events.
128           This provides the ability to precisely monitor engine utilisation
129           and also analyze the request dependency resolving timeline.
130
131           If in doubt, say "N".
132
133 config DRM_I915_DEBUG_VBLANK_EVADE
134         bool "Enable extra debug warnings for vblank evasion"
135         depends on DRM_I915
136         default n
137         help
138           Choose this option to turn on extra debug warnings for the
139           vblank evade mechanism. This gives a warning every time the
140           the deadline allotted for the vblank evade critical section
141           is exceeded, even if there isn't an actual risk of missing
142           the vblank.
143
144           If in doubt, say "N".