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