xref: /openbmc/linux/drivers/gpu/drm/nouveau/Kconfig (revision 1e0f6642)
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
7*1e0f6642SThomas Zimmermann	select DRM_DISPLAY_DP_HELPER
8*1e0f6642SThomas Zimmermann	select DRM_DISPLAY_HELPER
96ee73861SBen Skeggs	select DRM_KMS_HELPER
106ee73861SBen Skeggs	select DRM_TTM
1149a3f51dSThomas Zimmermann	select DRM_TTM_HELPER
12399382f8SBartlomiej Zolnierkiewicz	select BACKLIGHT_CLASS_DEVICE if DRM_NOUVEAU_BACKLIGHT
13a386c006SJean Delvare	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && INPUT
14a91ed42dSBen Hutchings	select X86_PLATFORM_DEVICES if ACPI && X86
15a91ed42dSBen Hutchings	select ACPI_WMI if ACPI && X86
16a91ed42dSBen Hutchings	select MXM_WMI if ACPI && X86
1740c61046SDave Airlie	select POWER_SUPPLY
181107276cSMaarten Lankhorst	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
191107276cSMaarten Lankhorst	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
201107276cSMaarten Lankhorst	select INPUT if ACPI && X86
211107276cSMaarten Lankhorst	select THERMAL if ACPI && X86
221107276cSMaarten Lankhorst	select ACPI_VIDEO if ACPI && X86
23742db30cSTakashi Iwai	select SND_HDA_COMPONENT if SND_HDA_CORE
246ee73861SBen Skeggs	help
258ba9ff11SAlexandre Courbot	  Choose this option for open-source NVIDIA support.
268ba9ff11SAlexandre Courbot
27b30a43acSDave Airlieconfig NOUVEAU_LEGACY_CTX_SUPPORT
28b30a43acSDave Airlie	bool "Nouveau legacy context support"
29b30a43acSDave Airlie	depends on DRM_NOUVEAU
3061ae2270SDave Airlie	select DRM_LEGACY
31b30a43acSDave Airlie	default y
32b30a43acSDave Airlie	help
33b30a43acSDave Airlie	  There was a version of the nouveau DDX that relied on legacy
34b30a43acSDave Airlie	  ctx ioctls not erroring out. But that was back in time a long
35b30a43acSDave Airlie	  ways, so offer a way to disable it now. For uapi compat with
36b30a43acSDave Airlie	  old nouveau ddx this should be on by default, but modern distros
37b30a43acSDave Airlie	  should consider turning it off.
38b30a43acSDave Airlie
398ba9ff11SAlexandre Courbotconfig NOUVEAU_PLATFORM_DRIVER
40055a65d5SAlexandre Courbot	bool "Nouveau (NVIDIA) SoC GPUs"
418ba9ff11SAlexandre Courbot	depends on DRM_NOUVEAU && ARCH_TEGRA
428ba9ff11SAlexandre Courbot	default y
438ba9ff11SAlexandre Courbot	help
448ba9ff11SAlexandre Courbot	  Support for Nouveau platform driver, used for SoC GPUs as found
458ba9ff11SAlexandre Courbot	  on NVIDIA Tegra K1.
466ee73861SBen Skeggs
475999933fSBen Skeggsconfig NOUVEAU_DEBUG
485999933fSBen Skeggs	int "Maximum debug level"
495999933fSBen Skeggs	depends on DRM_NOUVEAU
505999933fSBen Skeggs	range 0 7
515999933fSBen Skeggs	default 5
525999933fSBen Skeggs	help
535999933fSBen Skeggs	  Selects the maximum debug level to compile support for.
545999933fSBen Skeggs
555999933fSBen Skeggs	  0 - fatal
565999933fSBen Skeggs	  1 - error
575999933fSBen Skeggs	  2 - warning
585999933fSBen Skeggs	  3 - info
595999933fSBen Skeggs	  4 - debug
605999933fSBen Skeggs	  5 - trace (recommended)
615999933fSBen Skeggs	  6 - paranoia
625999933fSBen Skeggs	  7 - spam
635999933fSBen Skeggs
645999933fSBen Skeggs	  The paranoia and spam levels will add a lot of extra checks which
655999933fSBen Skeggs	  may potentially slow down driver operation.
665999933fSBen Skeggs
675999933fSBen Skeggsconfig NOUVEAU_DEBUG_DEFAULT
685999933fSBen Skeggs	int "Default debug level"
695999933fSBen Skeggs	depends on DRM_NOUVEAU
705999933fSBen Skeggs	range 0 7
715999933fSBen Skeggs	default 3
725999933fSBen Skeggs	help
735999933fSBen Skeggs	  Selects the default debug level
745999933fSBen Skeggs
75eb813999SBen Skeggsconfig NOUVEAU_DEBUG_MMU
76eb813999SBen Skeggs	bool "Enable additional MMU debugging"
77eb813999SBen Skeggs	depends on DRM_NOUVEAU
78eb813999SBen Skeggs	default n
79eb813999SBen Skeggs	help
80eb813999SBen Skeggs	  Say Y here if you want to enable verbose MMU debug output.
81eb813999SBen Skeggs
822853ccf0SBen Skeggsconfig NOUVEAU_DEBUG_PUSH
832853ccf0SBen Skeggs	bool "Enable additional push buffer debugging"
842853ccf0SBen Skeggs	depends on DRM_NOUVEAU
852853ccf0SBen Skeggs	default n
862853ccf0SBen Skeggs	help
872853ccf0SBen Skeggs	  Say Y here if you want to enable verbose push buffer debug output
882853ccf0SBen Skeggs	  and sanity checks.
892853ccf0SBen Skeggs
906ee73861SBen Skeggsconfig DRM_NOUVEAU_BACKLIGHT
916ee73861SBen Skeggs	bool "Support for backlight control"
926ee73861SBen Skeggs	depends on DRM_NOUVEAU
936ee73861SBen Skeggs	default y
946ee73861SBen Skeggs	help
956ee73861SBen Skeggs	  Say Y here if you want to control the backlight of your display
966ee73861SBen Skeggs	  (e.g. a laptop panel).
97eeaf06acSBen Skeggs
98eeaf06acSBen Skeggsconfig DRM_NOUVEAU_SVM
99eeaf06acSBen Skeggs	bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
1007328d9ccSChristoph Hellwig	depends on DEVICE_PRIVATE
101eeaf06acSBen Skeggs	depends on DRM_NOUVEAU
1029c240a7bSChristoph Hellwig	depends on MMU
103eeaf06acSBen Skeggs	depends on STAGING
1049c240a7bSChristoph Hellwig	select HMM_MIRROR
1059c240a7bSChristoph Hellwig	select MMU_NOTIFIER
106eeaf06acSBen Skeggs	default n
107eeaf06acSBen Skeggs	help
108eeaf06acSBen Skeggs	  Say Y here if you want to enable experimental support for
109eeaf06acSBen Skeggs	  Shared Virtual Memory (SVM).
110