Merge tag 'kconfig-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy...
[linux-2.6-microblaze.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_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
25 config 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
37 config 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
45 config 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
65 config 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
73 config 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
80 config 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
88 config 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
96 config 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).