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