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_PLATFORM_DRIVER
30	bool "Nouveau (NVIDIA) SoC GPUs"
31	depends on DRM_NOUVEAU && ARCH_TEGRA
32	default y
33	help
34	  Support for Nouveau platform driver, used for SoC GPUs as found
35	  on NVIDIA Tegra K1.
36
37config NOUVEAU_DEBUG
38	int "Maximum debug level"
39	depends on DRM_NOUVEAU
40	range 0 7
41	default 5
42	help
43	  Selects the maximum debug level to compile support for.
44
45	  0 - fatal
46	  1 - error
47	  2 - warning
48	  3 - info
49	  4 - debug
50	  5 - trace (recommended)
51	  6 - paranoia
52	  7 - spam
53
54	  The paranoia and spam levels will add a lot of extra checks which
55	  may potentially slow down driver operation.
56
57config NOUVEAU_DEBUG_DEFAULT
58	int "Default debug level"
59	depends on DRM_NOUVEAU
60	range 0 7
61	default 3
62	help
63	  Selects the default debug level
64
65config NOUVEAU_DEBUG_MMU
66	bool "Enable additional MMU debugging"
67	depends on DRM_NOUVEAU
68	default n
69	help
70	  Say Y here if you want to enable verbose MMU debug output.
71
72config NOUVEAU_DEBUG_PUSH
73	bool "Enable additional push buffer debugging"
74	depends on DRM_NOUVEAU
75	default n
76	help
77	  Say Y here if you want to enable verbose push buffer debug output
78	  and sanity checks.
79
80config DRM_NOUVEAU_BACKLIGHT
81	bool "Support for backlight control"
82	depends on DRM_NOUVEAU
83	default y
84	help
85	  Say Y here if you want to control the backlight of your display
86	  (e.g. a laptop panel).
87
88config DRM_NOUVEAU_SVM
89	bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
90	depends on DEVICE_PRIVATE
91	depends on DRM_NOUVEAU
92	depends on MMU
93	depends on STAGING
94	select HMM_MIRROR
95	select MMU_NOTIFIER
96	default n
97	help
98	  Say Y here if you want to enable experimental support for
99	  Shared Virtual Memory (SVM).
100