summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/Kconfig.debug
blob: fa6ee76f4d3c51059ed1b0f52705bb683febf1e0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
config DRM_USE_DYNAMIC_DEBUG
	bool "use dynamic debug to implement drm.debug"
	default n
	depends on BROKEN
	depends on DRM
	depends on DYNAMIC_DEBUG || DYNAMIC_DEBUG_CORE
	depends on JUMP_LABEL
	help
	 Use dynamic-debug to avoid drm_debug_enabled() runtime overheads.
	 Due to callsite counts in DRM drivers (~4k in amdgpu) and 56
	 bytes per callsite, the .data costs can be substantial, and
	 are therefore configurable.

config DRM_WERROR
	bool "Compile the drm subsystem with warnings as errors"
	depends on DRM && EXPERT
	depends on !WERROR
	default n
	help
	  A kernel build should not cause any compiler warnings, and this
	  enables the '-Werror' flag to enforce that rule in the drm subsystem.

	  The drm subsystem enables more warnings than the kernel default, so
	  this config option is disabled by default.

	  If in doubt, say N.

config DRM_HEADER_TEST
	bool "Ensure DRM headers are self-contained and pass kernel-doc"
	depends on DRM && EXPERT && BROKEN
	default n
	help
	  Ensure the DRM subsystem headers both under drivers/gpu/drm and
	  include/drm compile, are self-contained, have header guards, and have
	  no kernel-doc warnings.

	  If in doubt, say N.

config DRM_DEBUG_MM
	bool "Insert extra checks and debug info into the DRM range managers"
	default n
	depends on DRM
	depends on STACKTRACE_SUPPORT
	select STACKDEPOT
	help
	  Enable allocation tracking of memory manager and leak detection on
	  shutdown.

	  Recommended for driver developers only.

	  If in doubt, say "N".

config DRM_KUNIT_TEST_HELPERS
	tristate
	depends on DRM && KUNIT
	select DRM_KMS_HELPER
	help
	  KUnit Helpers for KMS drivers.

config DRM_KUNIT_TEST
	tristate "KUnit tests for DRM" if !KUNIT_ALL_TESTS
	depends on DRM && KUNIT && MMU
	select DRM_BRIDGE_CONNECTOR
	select DRM_BUDDY
	select DRM_DISPLAY_DP_HELPER
	select DRM_DISPLAY_HDMI_STATE_HELPER
	select DRM_DISPLAY_HELPER
	select DRM_EXEC
	select DRM_EXPORT_FOR_TESTS if m
	select DRM_GEM_SHMEM_HELPER
	select DRM_KUNIT_TEST_HELPERS
	select DRM_LIB_RANDOM
	select PRIME_NUMBERS
	default KUNIT_ALL_TESTS
	help
	  This builds unit tests for DRM. This option is not useful for
	  distributions or general kernels, but only for kernel
	  developers working on DRM and associated drivers.

	  For more information on KUnit and unit tests in general,
	  please refer to the KUnit documentation in
	  Documentation/dev-tools/kunit/.

	  If in doubt, say "N".

config DRM_TTM_KUNIT_TEST
	tristate "KUnit tests for TTM" if !KUNIT_ALL_TESTS
	default n
	depends on DRM && KUNIT && MMU && (UML || COMPILE_TEST)
	select DRM_TTM
	select DRM_BUDDY
	select DRM_EXPORT_FOR_TESTS if m
	select DRM_KUNIT_TEST_HELPERS
	default KUNIT_ALL_TESTS
	help
	  Enables unit tests for TTM, a GPU memory manager subsystem used
	  to manage memory buffers. This option is mostly useful for kernel
	  developers. It depends on (UML || COMPILE_TEST) since no other driver
	  which uses TTM can be loaded while running the tests.

	  If in doubt, say "N".

config DRM_SCHED_KUNIT_TEST
	tristate "KUnit tests for the DRM scheduler" if !KUNIT_ALL_TESTS
	select DRM_SCHED
	depends on DRM && KUNIT
	default KUNIT_ALL_TESTS
	help
	  Choose this option to build unit tests for the DRM scheduler.

	  Recommended for driver developers only.

	  If in doubt, say "N".

config DRM_EXPORT_FOR_TESTS
	bool