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