11.3Sriastrad# SPDX-License-Identifier: GPL-2.0-only
21.1Sriastradconfig DRM_NOUVEAU
31.2Sriastrad	tristate "Nouveau (NVIDIA) cards"
41.3Sriastrad	depends on DRM && PCI && MMU
51.3Sriastrad	select IOMMU_API
61.3Sriastrad	select FW_LOADER
71.1Sriastrad	select DRM_KMS_HELPER
81.1Sriastrad	select DRM_TTM
91.3Sriastrad	select BACKLIGHT_CLASS_DEVICE if DRM_NOUVEAU_BACKLIGHT
101.1Sriastrad	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && INPUT
111.1Sriastrad	select X86_PLATFORM_DEVICES if ACPI && X86
121.1Sriastrad	select ACPI_WMI if ACPI && X86
131.1Sriastrad	select MXM_WMI if ACPI && X86
141.1Sriastrad	select POWER_SUPPLY
151.1Sriastrad	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
161.1Sriastrad	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
171.1Sriastrad	select INPUT if ACPI && X86
181.1Sriastrad	select THERMAL if ACPI && X86
191.1Sriastrad	select ACPI_VIDEO if ACPI && X86
201.3Sriastrad	select SND_HDA_COMPONENT if SND_HDA_CORE
211.1Sriastrad	help
221.2Sriastrad	  Choose this option for open-source NVIDIA support.
231.2Sriastrad
241.3Sriastradconfig NOUVEAU_LEGACY_CTX_SUPPORT
251.3Sriastrad	bool "Nouveau legacy context support"
261.3Sriastrad	depends on DRM_NOUVEAU
271.3Sriastrad	select DRM_LEGACY
281.3Sriastrad	default y
291.3Sriastrad	help
301.3Sriastrad	  There was a version of the nouveau DDX that relied on legacy
311.3Sriastrad	  ctx ioctls not erroring out. But that was back in time a long
321.3Sriastrad	  ways, so offer a way to disable it now. For uapi compat with
331.3Sriastrad	  old nouveau ddx this should be on by default, but modern distros
341.3Sriastrad	  should consider turning it off.
351.3Sriastrad
361.2Sriastradconfig NOUVEAU_PLATFORM_DRIVER
371.2Sriastrad	bool "Nouveau (NVIDIA) SoC GPUs"
381.2Sriastrad	depends on DRM_NOUVEAU && ARCH_TEGRA
391.2Sriastrad	default y
401.2Sriastrad	help
411.2Sriastrad	  Support for Nouveau platform driver, used for SoC GPUs as found
421.2Sriastrad	  on NVIDIA Tegra K1.
431.1Sriastrad
441.1Sriastradconfig NOUVEAU_DEBUG
451.1Sriastrad	int "Maximum debug level"
461.1Sriastrad	depends on DRM_NOUVEAU
471.1Sriastrad	range 0 7
481.1Sriastrad	default 5
491.1Sriastrad	help
501.1Sriastrad	  Selects the maximum debug level to compile support for.
511.1Sriastrad
521.1Sriastrad	  0 - fatal
531.1Sriastrad	  1 - error
541.1Sriastrad	  2 - warning
551.1Sriastrad	  3 - info
561.1Sriastrad	  4 - debug
571.1Sriastrad	  5 - trace (recommended)
581.1Sriastrad	  6 - paranoia
591.1Sriastrad	  7 - spam
601.1Sriastrad
611.1Sriastrad	  The paranoia and spam levels will add a lot of extra checks which
621.1Sriastrad	  may potentially slow down driver operation.
631.1Sriastrad
641.1Sriastradconfig NOUVEAU_DEBUG_DEFAULT
651.1Sriastrad	int "Default debug level"
661.1Sriastrad	depends on DRM_NOUVEAU
671.1Sriastrad	range 0 7
681.1Sriastrad	default 3
691.1Sriastrad	help
701.1Sriastrad	  Selects the default debug level
711.1Sriastrad
721.3Sriastradconfig NOUVEAU_DEBUG_MMU
731.3Sriastrad	bool "Enable additional MMU debugging"
741.3Sriastrad	depends on DRM_NOUVEAU
751.3Sriastrad	default n
761.3Sriastrad	help
771.3Sriastrad	  Say Y here if you want to enable verbose MMU debug output.
781.3Sriastrad
791.1Sriastradconfig DRM_NOUVEAU_BACKLIGHT
801.1Sriastrad	bool "Support for backlight control"
811.1Sriastrad	depends on DRM_NOUVEAU
821.1Sriastrad	default y
831.1Sriastrad	help
841.1Sriastrad	  Say Y here if you want to control the backlight of your display
851.1Sriastrad	  (e.g. a laptop panel).
861.3Sriastrad
871.3Sriastradconfig DRM_NOUVEAU_SVM
881.3Sriastrad	bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
891.3Sriastrad	depends on DEVICE_PRIVATE
901.3Sriastrad	depends on DRM_NOUVEAU
911.3Sriastrad	depends on MMU
921.3Sriastrad	depends on STAGING
931.3Sriastrad	select HMM_MIRROR
941.3Sriastrad	select MMU_NOTIFIER
951.3Sriastrad	default n
961.3Sriastrad	help
971.3Sriastrad	  Say Y here if you want to enable experimental support for
981.3Sriastrad	  Shared Virtual Memory (SVM).
99