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 DRM_EXEC
14	select DRM_SCHED
15	select I2C
16	select I2C_ALGOBIT
17	select BACKLIGHT_CLASS_DEVICE if DRM_NOUVEAU_BACKLIGHT
18	select X86_PLATFORM_DEVICES if ACPI && X86
19	select ACPI_WMI if ACPI && X86
20	select MXM_WMI if ACPI && X86
21	select POWER_SUPPLY
22	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
23	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
24	select INPUT if ACPI && X86
25	select THERMAL if ACPI && X86
26	select ACPI_VIDEO if ACPI && X86
27	select SND_HDA_COMPONENT if SND_HDA_CORE
28	help
29	  Choose this option for open-source NVIDIA support.
30
31config NOUVEAU_PLATFORM_DRIVER
32	bool "Nouveau (NVIDIA) SoC GPUs"
33	depends on DRM_NOUVEAU && ARCH_TEGRA
34	default y
35	help
36	  Support for Nouveau platform driver, used for SoC GPUs as found
37	  on NVIDIA Tegra K1.
38
39config NOUVEAU_DEBUG
40	int "Maximum debug level"
41	depends on DRM_NOUVEAU
42	range 0 7
43	default 5
44	help
45	  Selects the maximum debug level to compile support for.
46
47	  0 - fatal
48	  1 - error
49	  2 - warning
50	  3 - info
51	  4 - debug
52	  5 - trace (recommended)
53	  6 - paranoia
54	  7 - spam
55
56	  The paranoia and spam levels will add a lot of extra checks which
57	  may potentially slow down driver operation.
58
59config NOUVEAU_DEBUG_DEFAULT
60	int "Default debug level"
61	depends on DRM_NOUVEAU
62	range 0 7
63	default 3
64	help
65	  Selects the default debug level
66
67config NOUVEAU_DEBUG_MMU
68	bool "Enable additional MMU debugging"
69	depends on DRM_NOUVEAU
70	default n
71	help
72	  Say Y here if you want to enable verbose MMU debug output.
73
74config NOUVEAU_DEBUG_PUSH
75	bool "Enable additional push buffer debugging"
76	depends on DRM_NOUVEAU
77	default n
78	help
79	  Say Y here if you want to enable verbose push buffer debug output
80	  and sanity checks.
81
82config DRM_NOUVEAU_BACKLIGHT
83	bool "Support for backlight control"
84	depends on DRM_NOUVEAU
85	default y
86	help
87	  Say Y here if you want to control the backlight of your display
88	  (e.g. a laptop panel).
89
90config DRM_NOUVEAU_SVM
91	bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
92	depends on DEVICE_PRIVATE
93	depends on DRM_NOUVEAU
94	depends on MMU
95	depends on STAGING
96	select HMM_MIRROR
97	select MMU_NOTIFIER
98	default n
99	help
100	  Say Y here if you want to enable experimental support for
101	  Shared Virtual Memory (SVM).
102