xref: /openbmc/linux/drivers/gpu/drm/nouveau/Kconfig (revision 000458b5)
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
71e0f6642SThomas Zimmermann	select DRM_DISPLAY_DP_HELPER
8644edf52SThomas Zimmermann	select DRM_DISPLAY_HDMI_HELPER
91e0f6642SThomas Zimmermann	select DRM_DISPLAY_HELPER
106ee73861SBen Skeggs	select DRM_KMS_HELPER
116ee73861SBen Skeggs	select DRM_TTM
1249a3f51dSThomas Zimmermann	select DRM_TTM_HELPER
13*000458b5SUwe Kleine-König	select I2C
14*000458b5SUwe Kleine-König	select I2C_ALGOBIT
15399382f8SBartlomiej Zolnierkiewicz	select BACKLIGHT_CLASS_DEVICE if DRM_NOUVEAU_BACKLIGHT
16a91ed42dSBen Hutchings	select X86_PLATFORM_DEVICES if ACPI && X86
17a91ed42dSBen Hutchings	select ACPI_WMI if ACPI && X86
18a91ed42dSBen Hutchings	select MXM_WMI if ACPI && X86
1940c61046SDave Airlie	select POWER_SUPPLY
201107276cSMaarten Lankhorst	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
211107276cSMaarten Lankhorst	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
221107276cSMaarten Lankhorst	select INPUT if ACPI && X86
231107276cSMaarten Lankhorst	select THERMAL if ACPI && X86
241107276cSMaarten Lankhorst	select ACPI_VIDEO if ACPI && X86
25742db30cSTakashi Iwai	select SND_HDA_COMPONENT if SND_HDA_CORE
266ee73861SBen Skeggs	help
278ba9ff11SAlexandre Courbot	  Choose this option for open-source NVIDIA support.
288ba9ff11SAlexandre Courbot
29b30a43acSDave Airlieconfig NOUVEAU_LEGACY_CTX_SUPPORT
30b30a43acSDave Airlie	bool "Nouveau legacy context support"
31b30a43acSDave Airlie	depends on DRM_NOUVEAU
3261ae2270SDave Airlie	select DRM_LEGACY
33b30a43acSDave Airlie	default y
34b30a43acSDave Airlie	help
35b30a43acSDave Airlie	  There was a version of the nouveau DDX that relied on legacy
36b30a43acSDave Airlie	  ctx ioctls not erroring out. But that was back in time a long
37b30a43acSDave Airlie	  ways, so offer a way to disable it now. For uapi compat with
38b30a43acSDave Airlie	  old nouveau ddx this should be on by default, but modern distros
39b30a43acSDave Airlie	  should consider turning it off.
40b30a43acSDave Airlie
418ba9ff11SAlexandre Courbotconfig NOUVEAU_PLATFORM_DRIVER
42055a65d5SAlexandre Courbot	bool "Nouveau (NVIDIA) SoC GPUs"
438ba9ff11SAlexandre Courbot	depends on DRM_NOUVEAU && ARCH_TEGRA
448ba9ff11SAlexandre Courbot	default y
458ba9ff11SAlexandre Courbot	help
468ba9ff11SAlexandre Courbot	  Support for Nouveau platform driver, used for SoC GPUs as found
478ba9ff11SAlexandre Courbot	  on NVIDIA Tegra K1.
486ee73861SBen Skeggs
495999933fSBen Skeggsconfig NOUVEAU_DEBUG
505999933fSBen Skeggs	int "Maximum debug level"
515999933fSBen Skeggs	depends on DRM_NOUVEAU
525999933fSBen Skeggs	range 0 7
535999933fSBen Skeggs	default 5
545999933fSBen Skeggs	help
555999933fSBen Skeggs	  Selects the maximum debug level to compile support for.
565999933fSBen Skeggs
575999933fSBen Skeggs	  0 - fatal
585999933fSBen Skeggs	  1 - error
595999933fSBen Skeggs	  2 - warning
605999933fSBen Skeggs	  3 - info
615999933fSBen Skeggs	  4 - debug
625999933fSBen Skeggs	  5 - trace (recommended)
635999933fSBen Skeggs	  6 - paranoia
645999933fSBen Skeggs	  7 - spam
655999933fSBen Skeggs
665999933fSBen Skeggs	  The paranoia and spam levels will add a lot of extra checks which
675999933fSBen Skeggs	  may potentially slow down driver operation.
685999933fSBen Skeggs
695999933fSBen Skeggsconfig NOUVEAU_DEBUG_DEFAULT
705999933fSBen Skeggs	int "Default debug level"
715999933fSBen Skeggs	depends on DRM_NOUVEAU
725999933fSBen Skeggs	range 0 7
735999933fSBen Skeggs	default 3
745999933fSBen Skeggs	help
755999933fSBen Skeggs	  Selects the default debug level
765999933fSBen Skeggs
77eb813999SBen Skeggsconfig NOUVEAU_DEBUG_MMU
78eb813999SBen Skeggs	bool "Enable additional MMU debugging"
79eb813999SBen Skeggs	depends on DRM_NOUVEAU
80eb813999SBen Skeggs	default n
81eb813999SBen Skeggs	help
82eb813999SBen Skeggs	  Say Y here if you want to enable verbose MMU debug output.
83eb813999SBen Skeggs
842853ccf0SBen Skeggsconfig NOUVEAU_DEBUG_PUSH
852853ccf0SBen Skeggs	bool "Enable additional push buffer debugging"
862853ccf0SBen Skeggs	depends on DRM_NOUVEAU
872853ccf0SBen Skeggs	default n
882853ccf0SBen Skeggs	help
892853ccf0SBen Skeggs	  Say Y here if you want to enable verbose push buffer debug output
902853ccf0SBen Skeggs	  and sanity checks.
912853ccf0SBen Skeggs
926ee73861SBen Skeggsconfig DRM_NOUVEAU_BACKLIGHT
936ee73861SBen Skeggs	bool "Support for backlight control"
946ee73861SBen Skeggs	depends on DRM_NOUVEAU
956ee73861SBen Skeggs	default y
966ee73861SBen Skeggs	help
976ee73861SBen Skeggs	  Say Y here if you want to control the backlight of your display
986ee73861SBen Skeggs	  (e.g. a laptop panel).
99eeaf06acSBen Skeggs
100eeaf06acSBen Skeggsconfig DRM_NOUVEAU_SVM
101eeaf06acSBen Skeggs	bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
1027328d9ccSChristoph Hellwig	depends on DEVICE_PRIVATE
103eeaf06acSBen Skeggs	depends on DRM_NOUVEAU
1049c240a7bSChristoph Hellwig	depends on MMU
105eeaf06acSBen Skeggs	depends on STAGING
1069c240a7bSChristoph Hellwig	select HMM_MIRROR
1079c240a7bSChristoph Hellwig	select MMU_NOTIFIER
108eeaf06acSBen Skeggs	default n
109eeaf06acSBen Skeggs	help
110eeaf06acSBen Skeggs	  Say Y here if you want to enable experimental support for
111eeaf06acSBen Skeggs	  Shared Virtual Memory (SVM).
112