xref: /linux/drivers/gpu/drm/xe/Kconfig (revision e6c2b0f23221ed43c4cc6f636e9ab7862954d562)
1# SPDX-License-Identifier: GPL-2.0-only
2config DRM_XE
3	tristate "Intel Xe2 Graphics"
4	depends on DRM && PCI
5	depends on KUNIT || !KUNIT
6	depends on INTEL_VSEC || !INTEL_VSEC
7	depends on X86_PLATFORM_DEVICES || !(X86 && ACPI)
8	select INTERVAL_TREE
9	# we need shmfs for the swappable backing store, and in particular
10	# the shmem_readpage() which depends upon tmpfs
11	select SHMEM
12	select TMPFS
13	select DRM_BUDDY
14	select DRM_CLIENT_SELECTION
15	select DRM_EXEC
16	select DRM_KMS_HELPER
17	select DRM_KUNIT_TEST_HELPERS if DRM_XE_KUNIT_TEST != n
18	select DRM_PANEL
19	select DRM_SUBALLOC_HELPER
20	select DRM_DISPLAY_DP_HELPER
21	select DRM_DISPLAY_DSC_HELPER
22	select DRM_DISPLAY_HDCP_HELPER
23	select DRM_DISPLAY_HDMI_HELPER
24	select DRM_DISPLAY_HELPER
25	select DRM_MIPI_DSI
26	select RELAY
27	select IRQ_WORK
28	# xe depends on ACPI_VIDEO when ACPI is enabled
29	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
30	select BACKLIGHT_CLASS_DEVICE if ACPI
31	select INPUT if ACPI
32	select ACPI_VIDEO if X86 && ACPI
33	select ACPI_WMI if X86 && ACPI
34	select SYNC_FILE
35	select CRC32
36	select SND_HDA_I915 if SND_HDA_CORE
37	select CEC_CORE if CEC_NOTIFIER
38	select VMAP_PFN
39	select DRM_TTM
40	select DRM_TTM_HELPER
41	select DRM_EXEC
42	select DRM_GPUVM
43	select DRM_SCHED
44	select MMU_NOTIFIER
45	select WANT_DEV_COREDUMP
46	select AUXILIARY_BUS
47	select HMM_MIRROR
48	select REGMAP if I2C
49	help
50	  Driver for Intel Xe2 series GPUs and later. Experimental support
51	  for Xe series is also available.
52
53	  If "M" is selected, the module will be called xe.
54
55config DRM_XE_DISPLAY
56	bool "Enable display support"
57	depends on DRM_XE && DRM_XE=m && HAS_IOPORT
58	select FB_IOMEM_HELPERS if DRM_FBDEV_EMULATION
59	select I2C
60	select I2C_ALGOBIT
61	default y
62	help
63	  Disable this option only if you want to compile out display support.
64
65config DRM_XE_DP_TUNNEL
66	bool "Enable DP tunnel support"
67	depends on DRM_XE_DISPLAY
68	depends on USB4
69	select DRM_DISPLAY_DP_TUNNEL
70	default y
71	help
72	  Choose this option to detect DP tunnels and enable the Bandwidth
73	  Allocation mode for such tunnels. This allows using the maximum
74	  resolution allowed by the link BW on all displays sharing the
75	  link BW, for instance on a Thunderbolt link.
76
77	  If in doubt say "Y".
78
79config DRM_XE_GPUSVM
80	bool "Enable CPU to GPU address mirroring"
81	depends on DRM_XE
82	depends on !UML
83	depends on DEVICE_PRIVATE
84	default y
85	select DRM_GPUSVM
86	help
87	  Enable this option if you want support for CPU to GPU address
88	  mirroring.
89
90	  If in doubt say "Y".
91
92config DRM_XE_PAGEMAP
93	bool "Enable device memory pool for SVM"
94	depends on DRM_XE_GPUSVM
95	select GET_FREE_REGION
96	default y
97	help
98	  Disable this option only if you don't want to expose local device
99	  memory for SVM. Will reduce KMD memory footprint when disabled.
100
101	  If in doubt say "Y".
102
103config DRM_XE_FORCE_PROBE
104	string "Force probe xe for selected Intel hardware IDs"
105	depends on DRM_XE
106	help
107	  This is the default value for the xe.force_probe module
108	  parameter. Using the module parameter overrides this option.
109
110	  Force probe the xe for Intel graphics devices that are
111	  recognized but not properly supported by this kernel version. It is
112	  recommended to upgrade to a kernel version with proper support as soon
113	  as it is available.
114
115	  It can also be used to block the probe of recognized and fully
116	  supported devices.
117
118	  Use "" to disable force probe. If in doubt, use this.
119
120	  Use "<pci-id>[,<pci-id>,...]" to force probe the xe for listed
121	  devices. For example, "4500" or "4500,4571".
122
123	  Use "*" to force probe the driver for all known devices.
124
125	  Use "!" right before the ID to block the probe of the device. For
126	  example, "4500,!4571" forces the probe of 4500 and blocks the probe of
127	  4571.
128
129	  Use "!*" to block the probe of the driver for all known devices.
130
131menu "drm/Xe Debugging"
132depends on DRM_XE
133depends on EXPERT
134source "drivers/gpu/drm/xe/Kconfig.debug"
135endmenu
136
137menu "drm/xe Profile Guided Optimisation"
138	visible if EXPERT
139	depends on DRM_XE
140	source "drivers/gpu/drm/xe/Kconfig.profile"
141endmenu
142