xref: /linux/drivers/gpu/drm/xe/Kconfig (revision 6c55404d4f7306889eca9c333066bb4bdc2a4a7c)
1dd08ebf6SMatthew Brost# SPDX-License-Identifier: GPL-2.0-only
2dd08ebf6SMatthew Brostconfig DRM_XE
3dd08ebf6SMatthew Brost	tristate "Intel Xe Graphics"
405b8b6ddSGeert Uytterhoeven	depends on DRM && PCI && MMU && (m || (y && KUNIT=y))
5dd08ebf6SMatthew Brost	select INTERVAL_TREE
6dd08ebf6SMatthew Brost	# we need shmfs for the swappable backing store, and in particular
7dd08ebf6SMatthew Brost	# the shmem_readpage() which depends upon tmpfs
8dd08ebf6SMatthew Brost	select SHMEM
9dd08ebf6SMatthew Brost	select TMPFS
10dd08ebf6SMatthew Brost	select DRM_BUDDY
11f1d730cbSThomas Zimmermann	select DRM_CLIENT_SELECTION
12d490ecf5SThomas Hellström	select DRM_EXEC
13dd08ebf6SMatthew Brost	select DRM_KMS_HELPER
140e6fec6dSArnd Bergmann	select DRM_KUNIT_TEST_HELPERS if DRM_XE_KUNIT_TEST != n
15dd08ebf6SMatthew Brost	select DRM_PANEL
16dd08ebf6SMatthew Brost	select DRM_SUBALLOC_HELPER
177fe302aeSGeert Uytterhoeven	select DRM_DISPLAY_DP_HELPER
18f6882661SDmitry Baryshkov	select DRM_DISPLAY_DSC_HELPER
1995734469SGeert Uytterhoeven	select DRM_DISPLAY_HDCP_HELPER
20d7c128cbSGeert Uytterhoeven	select DRM_DISPLAY_HDMI_HELPER
2105b8b6ddSGeert Uytterhoeven	select DRM_DISPLAY_HELPER
2244e69495SMaarten Lankhorst	select DRM_MIPI_DSI
23dd08ebf6SMatthew Brost	select RELAY
24dd08ebf6SMatthew Brost	select IRQ_WORK
25d2197029SDave Airlie	# xe depends on ACPI_VIDEO when ACPI is enabled
2644e69495SMaarten Lankhorst	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
2744e69495SMaarten Lankhorst	select BACKLIGHT_CLASS_DEVICE if ACPI
2844e69495SMaarten Lankhorst	select INPUT if ACPI
2944e69495SMaarten Lankhorst	select ACPI_VIDEO if X86 && ACPI
3067a9e86dSLu Yao	select X86_PLATFORM_DEVICES if X86 && ACPI
31d2197029SDave Airlie	select ACPI_WMI if X86 && ACPI
32dd08ebf6SMatthew Brost	select SYNC_FILE
33dd08ebf6SMatthew Brost	select IOSF_MBI
34dd08ebf6SMatthew Brost	select CRC32
35dd08ebf6SMatthew Brost	select SND_HDA_I915 if SND_HDA_CORE
36dd08ebf6SMatthew Brost	select CEC_CORE if CEC_NOTIFIER
37dd08ebf6SMatthew Brost	select VMAP_PFN
38dd08ebf6SMatthew Brost	select DRM_TTM
39dd08ebf6SMatthew Brost	select DRM_TTM_HELPER
40d490ecf5SThomas Hellström	select DRM_EXEC
41b06d47beSMatthew Brost	select DRM_GPUVM
42dd08ebf6SMatthew Brost	select DRM_SCHED
43dd08ebf6SMatthew Brost	select MMU_NOTIFIER
44e7994850SRodrigo Vivi	select WANT_DEV_COREDUMP
4587a4c85dSVitaly Lubart	select AUXILIARY_BUS
4681e058a3SOak Zeng	select HMM_MIRROR
47dd08ebf6SMatthew Brost	help
48dd08ebf6SMatthew Brost	  Experimental driver for Intel Xe series GPUs
49dd08ebf6SMatthew Brost
50dd08ebf6SMatthew Brost	  If "M" is selected, the module will be called xe.
51dd08ebf6SMatthew Brost
5244e69495SMaarten Lankhorstconfig DRM_XE_DISPLAY
5344e69495SMaarten Lankhorst	bool "Enable display support"
54f663c6aeSNiklas Schnelle	depends on DRM_XE && DRM_XE=m && HAS_IOPORT
5568958288SYue Haibing	select FB_IOMEM_HELPERS if DRM_FBDEV_EMULATION
5644e69495SMaarten Lankhorst	select I2C
5744e69495SMaarten Lankhorst	select I2C_ALGOBIT
5844e69495SMaarten Lankhorst	default y
5944e69495SMaarten Lankhorst	help
6044e69495SMaarten Lankhorst	  Disable this option only if you want to compile out display support.
6144e69495SMaarten Lankhorst
6273900dceSImre Deakconfig DRM_XE_DP_TUNNEL
6373900dceSImre Deak	bool "Enable DP tunnel support"
648a2392feSImre Deak	depends on DRM_XE_DISPLAY
6573900dceSImre Deak	depends on USB4
6673900dceSImre Deak	select DRM_DISPLAY_DP_TUNNEL
6773900dceSImre Deak	default y
6873900dceSImre Deak	help
6973900dceSImre Deak	  Choose this option to detect DP tunnels and enable the Bandwidth
7073900dceSImre Deak	  Allocation mode for such tunnels. This allows using the maximum
7173900dceSImre Deak	  resolution allowed by the link BW on all displays sharing the
7273900dceSImre Deak	  link BW, for instance on a Thunderbolt link.
7373900dceSImre Deak
7473900dceSImre Deak	  If in doubt say "Y".
7573900dceSImre Deak
76*6c55404dSThomas Hellströmconfig DRM_XE_GPUSVM
77*6c55404dSThomas Hellström	bool "Enable CPU to GPU address mirroring"
78*6c55404dSThomas Hellström	depends on DRM_XE
79*6c55404dSThomas Hellström	depends on !UML
80*6c55404dSThomas Hellström	depends on DEVICE_PRIVATE
81*6c55404dSThomas Hellström	default y
82*6c55404dSThomas Hellström	select DRM_GPUSVM
83*6c55404dSThomas Hellström	help
84*6c55404dSThomas Hellström	  Enable this option if you want support for CPU to GPU address
85*6c55404dSThomas Hellström	  mirroring.
86*6c55404dSThomas Hellström
87*6c55404dSThomas Hellström	  If in doubut say "Y".
88*6c55404dSThomas Hellström
890c30c654SMatthew Brostconfig DRM_XE_DEVMEM_MIRROR
900c30c654SMatthew Brost	bool "Enable device memory mirror"
91*6c55404dSThomas Hellström	depends on DRM_XE_GPUSVM
920c30c654SMatthew Brost	select GET_FREE_REGION
930c30c654SMatthew Brost	default y
940c30c654SMatthew Brost	help
950c30c654SMatthew Brost	  Disable this option only if you want to compile out without device
960c30c654SMatthew Brost	  memory mirror. Will reduce KMD memory footprint when disabled.
970c30c654SMatthew Brost
98dd08ebf6SMatthew Brostconfig DRM_XE_FORCE_PROBE
99dd08ebf6SMatthew Brost	string "Force probe xe for selected Intel hardware IDs"
100dd08ebf6SMatthew Brost	depends on DRM_XE
101dd08ebf6SMatthew Brost	help
102dd08ebf6SMatthew Brost	  This is the default value for the xe.force_probe module
103dd08ebf6SMatthew Brost	  parameter. Using the module parameter overrides this option.
104dd08ebf6SMatthew Brost
105dd08ebf6SMatthew Brost	  Force probe the xe for Intel graphics devices that are
106dd08ebf6SMatthew Brost	  recognized but not properly supported by this kernel version. It is
107dd08ebf6SMatthew Brost	  recommended to upgrade to a kernel version with proper support as soon
108dd08ebf6SMatthew Brost	  as it is available.
109dd08ebf6SMatthew Brost
110dd08ebf6SMatthew Brost	  It can also be used to block the probe of recognized and fully
111dd08ebf6SMatthew Brost	  supported devices.
112dd08ebf6SMatthew Brost
113dd08ebf6SMatthew Brost	  Use "" to disable force probe. If in doubt, use this.
114dd08ebf6SMatthew Brost
115dd08ebf6SMatthew Brost	  Use "<pci-id>[,<pci-id>,...]" to force probe the xe for listed
116dd08ebf6SMatthew Brost	  devices. For example, "4500" or "4500,4571".
117dd08ebf6SMatthew Brost
118dd08ebf6SMatthew Brost	  Use "*" to force probe the driver for all known devices.
119dd08ebf6SMatthew Brost
120dd08ebf6SMatthew Brost	  Use "!" right before the ID to block the probe of the device. For
121dd08ebf6SMatthew Brost	  example, "4500,!4571" forces the probe of 4500 and blocks the probe of
122dd08ebf6SMatthew Brost	  4571.
123dd08ebf6SMatthew Brost
124dd08ebf6SMatthew Brost	  Use "!*" to block the probe of the driver for all known devices.
125dd08ebf6SMatthew Brost
126dd08ebf6SMatthew Brostmenu "drm/Xe Debugging"
127dd08ebf6SMatthew Brostdepends on DRM_XE
128dd08ebf6SMatthew Brostdepends on EXPERT
129dd08ebf6SMatthew Brostsource "drivers/gpu/drm/xe/Kconfig.debug"
130dd08ebf6SMatthew Brostendmenu
131d2776564STejas Upadhyay
132d2776564STejas Upadhyaymenu "drm/xe Profile Guided Optimisation"
133d2776564STejas Upadhyay	visible if EXPERT
134d2776564STejas Upadhyay	depends on DRM_XE
135d2776564STejas Upadhyay	source "drivers/gpu/drm/xe/Kconfig.profile"
136d2776564STejas Upadhyayendmenu
137