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