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