Linux 6.12-rc1
[linux-block.git] / drivers / gpu / drm / i915 / Kconfig
CommitLineData
ec8f24b7 1# SPDX-License-Identifier: GPL-2.0-only
4520f53a
DV
2config DRM_I915
3 tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
4 depends on DRM
00fe639a 5 depends on X86 && PCI
a8b2b8b0 6 depends on !PREEMPT_RT
ce3d4d7f 7 select INTEL_GTT if X86
5cc9ed4b 8 select INTERVAL_TREE
4520f53a
DV
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
1e0f6642 13 select DRM_DISPLAY_DP_HELPER
6a99099f 14 select DRM_DISPLAY_HDCP_HELPER
4fc8cb47 15 select DRM_DISPLAY_HDMI_HELPER
1e0f6642 16 select DRM_DISPLAY_HELPER
4520f53a 17 select DRM_KMS_HELPER
593e0622 18 select DRM_PANEL
7e9804fd 19 select DRM_MIPI_DSI
4520844b 20 select FB_IOMEM_HELPERS if DRM_FBDEV_EMULATION
f8240835 21 select RELAY
000458b5
UKK
22 select I2C
23 select I2C_ALGOBIT
81c0ed21 24 select IRQ_WORK
4520f53a
DV
25 # i915 depends on ACPI_VIDEO when ACPI is enabled
26 # but for select to work, need to select ACPI_VIDEO's dependencies, ick
4520f53a 27 select BACKLIGHT_CLASS_DEVICE if ACPI
4520f53a 28 select INPUT if ACPI
fe7aebb4
HG
29 select X86_PLATFORM_DEVICES if ACPI
30 select ACPI_WMI if ACPI
4520f53a 31 select ACPI_VIDEO if ACPI
fec0445c 32 select SYNC_FILE
f0e204e0 33 select IOSF_MBI if X86
a25bcadd 34 select CRC32
a57942bf 35 select SND_HDA_I915 if SND_HDA_CORE
9c229127 36 select CEC_CORE if CEC_NOTIFIER
534a6687 37 select VMAP_PFN
d1487389 38 select DRM_TTM
6387a3c4 39 select DRM_BUDDY
1e3dc1d8 40 select AUXILIARY_BUS
4520f53a
DV
41 help
42 Choose this option if you have a system that has "Intel Graphics
43 Media Accelerator" or "HD Graphics" integrated graphics,
44 including 830M, 845G, 852GM, 855GM, 865G, 915G, 945G, 965G,
45 G35, G41, G43, G45 chipsets and Celeron, Pentium, Core i3,
46 Core i5, Core i7 as well as Atom CPUs with integrated graphics.
352cb4ef
JN
47
48 This driver is used by the Intel driver in X.org 6.8 and
49 XFree86 4.4 and above. It replaces the older i830 module that
50 supported a subset of the hardware in older X.org releases.
4520f53a
DV
51
52 Note that the older i810/i815 chipsets require the use of the
53 i810 driver instead, and the Atom z5xx series has an entirely
54 different implementation.
55
352cb4ef
JN
56 If "M" is selected, the module will be called i915.
57
7ef5ef5c 58config DRM_I915_FORCE_PROBE
157821fb 59 string "Force probe i915 for selected Intel hardware IDs"
7ef5ef5c 60 depends on DRM_I915
7ef5ef5c
JN
61 help
62 This is the default value for the i915.force_probe module
63 parameter. Using the module parameter overrides this option.
64
79c901c9
JN
65 Force probe the i915 driver for Intel graphics devices that are
66 recognized but not properly supported by this kernel version. Force
67 probing an unsupported device taints the kernel. It is recommended to
68 upgrade to a kernel version with proper support as soon as it is
69 available.
7ef5ef5c 70
157821fb
RV
71 It can also be used to block the probe of recognized and fully
72 supported devices.
73
7ef5ef5c
JN
74 Use "" to disable force probe. If in doubt, use this.
75
157821fb 76 Use "<pci-id>[,<pci-id>,...]" to force probe the i915 for listed
7ef5ef5c 77 devices. For example, "4500" or "4500,4571".
4520f53a 78
79c901c9
JN
79 Use "*" to force probe the driver for all known devices. Not
80 recommended.
755412e2 81
157821fb
RV
82 Use "!" right before the ID to block the probe of the device. For
83 example, "4500,!4571" forces the probe of 4500 and blocks the probe of
84 4571.
85
86 Use "!*" to block the probe of the driver for all known devices.
87
98a2f411
CW
88config DRM_I915_CAPTURE_ERROR
89 bool "Enable capturing GPU state following a hang"
90 depends on DRM_I915
91 default y
92 help
93 This option enables capturing the GPU state when a hang is detected.
94 This information is vital for triaging hangs and assists in debugging.
ddae4d7a 95 Please report any hang for triaging according to:
f8e9325f 96 https://drm.pages.freedesktop.org/intel-docs/how-to-file-i915-bugs.html
98a2f411
CW
97
98 If in doubt, say "Y".
99
0a97015d
CW
100config DRM_I915_COMPRESS_ERROR
101 bool "Compress GPU error state"
102 depends on DRM_I915_CAPTURE_ERROR
103 select ZLIB_DEFLATE
104 default y
105 help
106 This option selects ZLIB_DEFLATE if it isn't already
107 selected and causes any error state captured upon a GPU hang
108 to be compressed using zlib.
109
110 If in doubt, say "Y".
111
755412e2
CW
112config DRM_I915_USERPTR
113 bool "Always enable userptr support"
114 depends on DRM_I915
115 select MMU_NOTIFIER
116 default y
117 help
118 This option selects CONFIG_MMU_NOTIFIER if it isn't already
119 selected to enabled full userptr support.
120
121 If in doubt, say "Y".
643a24b6 122
8b750bf7
CH
123config DRM_I915_GVT_KVMGT
124 tristate "Enable KVM host support Intel GVT-g graphics virtualization"
d30213e5 125 depends on DRM_I915
d72d69ab 126 depends on X86
d30213e5 127 depends on 64BIT
8b750bf7 128 depends on KVM
de858a05 129 depends on VFIO
8b750bf7
CH
130 select DRM_I915_GVT
131 select KVM_EXTERNAL_WRITE_TRACKING
8bf8c5ee 132 select VFIO_MDEV
8b750bf7 133
d30213e5 134 help
0ad35fed
ZW
135 Choose this option if you want to enable Intel GVT-g graphics
136 virtualization technology host support with integrated graphics.
137 With GVT-g, it's possible to have one integrated graphics
8b750bf7 138 device shared by multiple VMs under KVM.
0ad35fed 139
8b750bf7
CH
140 Note that this driver only supports newer device from Broadwell on.
141 For further information and setup guide, you can visit:
1a00897e 142 https://github.com/intel/gvt-linux/wiki.
0ad35fed
ZW
143
144 If in doubt, say "N".
145
e6aa7136 146config DRM_I915_PXP
c974cf01 147 bool "Enable Intel PXP support"
e6aa7136
DCS
148 depends on DRM_I915
149 depends on INTEL_MEI && INTEL_MEI_PXP
150 default n
151 help
c974cf01
RV
152 PXP (Protected Xe Path) is an i915 component, available on graphics
153 version 12 and newer GPUs, that helps to establish the hardware
154 protected session and manage the status of the alive software session,
155 as well as its life cycle.
e6aa7136 156
91888b5b
ID
157config DRM_I915_DP_TUNNEL
158 bool "Enable DP tunnel support"
159 depends on DRM_I915
160 depends on USB4
161 select DRM_DISPLAY_DP_TUNNEL
162 default y
163 help
164 Choose this option to detect DP tunnels and enable the Bandwidth
165 Allocation mode for such tunnels. This allows using the maximum
166 resolution allowed by the link BW on all displays sharing the
167 link BW, for instance on a Thunderbolt link.
168
169 If in doubt, say "Y".
170
643a24b6
TU
171menu "drm/i915 Debugging"
172depends on DRM_I915
173depends on EXPERT
8636a1f9 174source "drivers/gpu/drm/i915/Kconfig.debug"
643a24b6 175endmenu
7ce99d24
CW
176
177menu "drm/i915 Profile Guided Optimisation"
178 visible if EXPERT
179 depends on DRM_I915
180 source "drivers/gpu/drm/i915/Kconfig.profile"
181endmenu
d9d54a53 182
0b93efca
RD
183config DRM_I915_GVT
184 bool