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