xref: /openbmc/linux/drivers/gpu/drm/nouveau/Kconfig (revision 49a3f51d)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
26ee73861SBen Skeggsconfig DRM_NOUVEAU
38ba9ff11SAlexandre Courbot	tristate "Nouveau (NVIDIA) cards"
4011cda58SBenjamin Gaignard	depends on DRM && PCI && MMU
5ee864216SChen Zhou	select IOMMU_API
66ee73861SBen Skeggs	select FW_LOADER
76ee73861SBen Skeggs	select DRM_KMS_HELPER
86ee73861SBen Skeggs	select DRM_TTM
9*49a3f51dSThomas Zimmermann	select DRM_TTM_HELPER
10399382f8SBartlomiej Zolnierkiewicz	select BACKLIGHT_CLASS_DEVICE if DRM_NOUVEAU_BACKLIGHT
11a386c006SJean Delvare	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && INPUT
12a91ed42dSBen Hutchings	select X86_PLATFORM_DEVICES if ACPI && X86
13a91ed42dSBen Hutchings	select ACPI_WMI if ACPI && X86
14a91ed42dSBen Hutchings	select MXM_WMI if ACPI && X86
1540c61046SDave Airlie	select POWER_SUPPLY
161107276cSMaarten Lankhorst	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
171107276cSMaarten Lankhorst	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
181107276cSMaarten Lankhorst	select INPUT if ACPI && X86
191107276cSMaarten Lankhorst	select THERMAL if ACPI && X86
201107276cSMaarten Lankhorst	select ACPI_VIDEO if ACPI && X86
21742db30cSTakashi Iwai	select SND_HDA_COMPONENT if SND_HDA_CORE
226ee73861SBen Skeggs	help
238ba9ff11SAlexandre Courbot	  Choose this option for open-source NVIDIA support.
248ba9ff11SAlexandre Courbot
25b30a43acSDave Airlieconfig NOUVEAU_LEGACY_CTX_SUPPORT
26b30a43acSDave Airlie	bool "Nouveau legacy context support"
27b30a43acSDave Airlie	depends on DRM_NOUVEAU
2861ae2270SDave Airlie	select DRM_LEGACY
29b30a43acSDave Airlie	default y
30b30a43acSDave Airlie	help
31b30a43acSDave Airlie	  There was a version of the nouveau DDX that relied on legacy
32b30a43acSDave Airlie	  ctx ioctls not erroring out. But that was back in time a long
33b30a43acSDave Airlie	  ways, so offer a way to disable it now. For uapi compat with
34b30a43acSDave Airlie	  old nouveau ddx this should be on by default, but modern distros
35b30a43acSDave Airlie	  should consider turning it off.
36b30a43acSDave Airlie
378ba9ff11SAlexandre Courbotconfig NOUVEAU_PLATFORM_DRIVER
38055a65d5SAlexandre Courbot	bool "Nouveau (NVIDIA) SoC GPUs"
398ba9ff11SAlexandre Courbot	depends on DRM_NOUVEAU && ARCH_TEGRA
408ba9ff11SAlexandre Courbot	default y
418ba9ff11SAlexandre Courbot	help
428ba9ff11SAlexandre Courbot	  Support for Nouveau platform driver, used for SoC GPUs as found
438ba9ff11SAlexandre Courbot	  on NVIDIA Tegra K1.
446ee73861SBen Skeggs
455999933fSBen Skeggsconfig NOUVEAU_DEBUG
465999933fSBen Skeggs	int "Maximum debug level"
475999933fSBen Skeggs	depends on DRM_NOUVEAU
485999933fSBen Skeggs	range 0 7
495999933fSBen Skeggs	default 5
505999933fSBen Skeggs	help
515999933fSBen Skeggs	  Selects the maximum debug level to compile support for.
525999933fSBen Skeggs
535999933fSBen Skeggs	  0 - fatal
545999933fSBen Skeggs	  1 - error
555999933fSBen Skeggs	  2 - warning
565999933fSBen Skeggs	  3 - info
575999933fSBen Skeggs	  4 - debug
585999933fSBen Skeggs	  5 - trace (recommended)
595999933fSBen Skeggs	  6 - paranoia
605999933fSBen Skeggs	  7 - spam
615999933fSBen Skeggs
625999933fSBen Skeggs	  The paranoia and spam levels will add a lot of extra checks which
635999933fSBen Skeggs	  may potentially slow down driver operation.
645999933fSBen Skeggs
655999933fSBen Skeggsconfig NOUVEAU_DEBUG_DEFAULT
665999933fSBen Skeggs	int "Default debug level"
675999933fSBen Skeggs	depends on DRM_NOUVEAU
685999933fSBen Skeggs	range 0 7
695999933fSBen Skeggs	default 3
705999933fSBen Skeggs	help
715999933fSBen Skeggs	  Selects the default debug level
725999933fSBen Skeggs
73eb813999SBen Skeggsconfig NOUVEAU_DEBUG_MMU
74eb813999SBen Skeggs	bool "Enable additional MMU debugging"
75eb813999SBen Skeggs	depends on DRM_NOUVEAU
76eb813999SBen Skeggs	default n
77eb813999SBen Skeggs	help
78eb813999SBen Skeggs	  Say Y here if you want to enable verbose MMU debug output.
79eb813999SBen Skeggs
802853ccf0SBen Skeggsconfig NOUVEAU_DEBUG_PUSH
812853ccf0SBen Skeggs	bool "Enable additional push buffer debugging"
822853ccf0SBen Skeggs	depends on DRM_NOUVEAU
832853ccf0SBen Skeggs	default n
842853ccf0SBen Skeggs	help
852853ccf0SBen Skeggs	  Say Y here if you want to enable verbose push buffer debug output
862853ccf0SBen Skeggs	  and sanity checks.
872853ccf0SBen Skeggs
886ee73861SBen Skeggsconfig DRM_NOUVEAU_BACKLIGHT
896ee73861SBen Skeggs	bool "Support for backlight control"
906ee73861SBen Skeggs	depends on DRM_NOUVEAU
916ee73861SBen Skeggs	default y
926ee73861SBen Skeggs	help
936ee73861SBen Skeggs	  Say Y here if you want to control the backlight of your display
946ee73861SBen Skeggs	  (e.g. a laptop panel).
95eeaf06acSBen Skeggs
96eeaf06acSBen Skeggsconfig DRM_NOUVEAU_SVM
97eeaf06acSBen Skeggs	bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
987328d9ccSChristoph Hellwig	depends on DEVICE_PRIVATE
99eeaf06acSBen Skeggs	depends on DRM_NOUVEAU
1009c240a7bSChristoph Hellwig	depends on MMU
101eeaf06acSBen Skeggs	depends on STAGING
1029c240a7bSChristoph Hellwig	select HMM_MIRROR
1039c240a7bSChristoph Hellwig	select MMU_NOTIFIER
104eeaf06acSBen Skeggs	default n
105eeaf06acSBen Skeggs	help
106eeaf06acSBen Skeggs	  Say Y here if you want to enable experimental support for
107eeaf06acSBen Skeggs	  Shared Virtual Memory (SVM).
108