xref: /openbmc/linux/drivers/gpu/drm/nouveau/Kconfig (revision a701d28e)
1# SPDX-License-Identifier: GPL-2.0-only
2config DRM_NOUVEAU
3	tristate "Nouveau (NVIDIA) cards"
4	depends on DRM && PCI && MMU
5	select IOMMU_API
6	select FW_LOADER
7	select DRM_KMS_HELPER
8	select DRM_TTM
9	select BACKLIGHT_CLASS_DEVICE if DRM_NOUVEAU_BACKLIGHT
10	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && INPUT
11	select X86_PLATFORM_DEVICES if ACPI && X86
12	select ACPI_WMI if ACPI && X86
13	select MXM_WMI if ACPI && X86
14	select POWER_SUPPLY
15	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
16	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
17	select INPUT if ACPI && X86
18	select THERMAL if ACPI && X86
19	select ACPI_VIDEO if ACPI && X86
20	select SND_HDA_COMPONENT if SND_HDA_CORE
21	help
22	  Choose this option for open-source NVIDIA support.
23
24config NOUVEAU_LEGACY_CTX_SUPPORT
25	bool "Nouveau legacy context support"
26	depends on DRM_NOUVEAU
27	select DRM_LEGACY
28	default y
29	help
30	  There was a version of the nouveau DDX that relied on legacy
31	  ctx ioctls not erroring out. But that was back in time a long
32	  ways, so offer a way to disable it now. For uapi compat with
33	  old nouveau ddx this should be on by default, but modern distros
34	  should consider turning it off.
35
36config NOUVEAU_PLATFORM_DRIVER
37	bool "Nouveau (NVIDIA) SoC GPUs"
38	depends on DRM_NOUVEAU && ARCH_TEGRA
39	default y
40	help
41	  Support for Nouveau platform driver, used for SoC GPUs as found
42	  on NVIDIA Tegra K1.
43
44config NOUVEAU_DEBUG
45	int "Maximum debug level"
46	depends on DRM_NOUVEAU
47	range 0 7
48	default 5
49	help
50	  Selects the maximum debug level to compile support for.
51
52	  0 - fatal
53	  1 - error
54	  2 - warning
55	  3 - info
56	  4 - debug
57	  5 - trace (recommended)
58	  6 - paranoia
59	  7 - spam
60
61	  The paranoia and spam levels will add a lot of extra checks which
62	  may potentially slow down driver operation.
63
64config NOUVEAU_DEBUG_DEFAULT
65	int "Default debug level"
66	depends on DRM_NOUVEAU
67	range 0 7
68	default 3
69	help
70	  Selects the default debug level
71
72config NOUVEAU_DEBUG_MMU
73	bool "Enable additional MMU debugging"
74	depends on DRM_NOUVEAU
75	default n
76	help
77	  Say Y here if you want to enable verbose MMU debug output.
78
79config NOUVEAU_DEBUG_PUSH
80	bool "Enable additional push buffer debugging"
81	depends on DRM_NOUVEAU
82	default n
83	help
84	  Say Y here if you want to enable verbose push buffer debug output
85	  and sanity checks.
86
87config DRM_NOUVEAU_BACKLIGHT
88	bool "Support for backlight control"
89	depends on DRM_NOUVEAU
90	default y
91	help
92	  Say Y here if you want to control the backlight of your display
93	  (e.g. a laptop panel).
94
95config DRM_NOUVEAU_SVM
96	bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
97	depends on DEVICE_PRIVATE
98	depends on DRM_NOUVEAU
99	depends on MMU
100	depends on STAGING
101	select HMM_MIRROR
102	select MMU_NOTIFIER
103	default n
104	help
105	  Say Y here if you want to enable experimental support for
106	  Shared Virtual Memory (SVM).
107