xref: /linux/drivers/gpu/drm/i915/Kconfig (revision c771600c6af14749609b49565ffb4cac2959710d)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
24520f53aSDaniel Vetterconfig DRM_I915
34520f53aSDaniel Vetter	tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
44520f53aSDaniel Vetter	depends on DRM
500fe639aSVille Syrjälä	depends on X86 && PCI
6a8b2b8b0SSebastian Andrzej Siewior	depends on !PREEMPT_RT
7ce3d4d7fSCasey Bowman	select INTEL_GTT if X86
85cc9ed4bSChris Wilson	select INTERVAL_TREE
94520f53aSDaniel Vetter	# we need shmfs for the swappable backing store, and in particular
104520f53aSDaniel Vetter	# the shmem_readpage() which depends upon tmpfs
114520f53aSDaniel Vetter	select SHMEM
124520f53aSDaniel Vetter	select TMPFS
13*feda66ceSThomas Zimmermann	select DRM_CLIENT_SELECTION
141e0f6642SThomas Zimmermann	select DRM_DISPLAY_DP_HELPER
15ca097d4dSDmitry Baryshkov	select DRM_DISPLAY_DSC_HELPER
166a99099fSThomas Zimmermann	select DRM_DISPLAY_HDCP_HELPER
174fc8cb47SThomas Zimmermann	select DRM_DISPLAY_HDMI_HELPER
181e0f6642SThomas Zimmermann	select DRM_DISPLAY_HELPER
194520f53aSDaniel Vetter	select DRM_KMS_HELPER
20593e0622SJani Nikula	select DRM_PANEL
217e9804fdSJani Nikula	select DRM_MIPI_DSI
224520844bSThomas Zimmermann	select FB_IOMEM_HELPERS if DRM_FBDEV_EMULATION
23f8240835SAkash Goel	select RELAY
24000458b5SUwe Kleine-König	select I2C
25000458b5SUwe Kleine-König	select I2C_ALGOBIT
2681c0ed21SChris Wilson	select IRQ_WORK
274520f53aSDaniel Vetter	# i915 depends on ACPI_VIDEO when ACPI is enabled
284520f53aSDaniel Vetter	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
294520f53aSDaniel Vetter	select BACKLIGHT_CLASS_DEVICE if ACPI
304520f53aSDaniel Vetter	select INPUT if ACPI
31fe7aebb4SHans de Goede	select X86_PLATFORM_DEVICES if ACPI
32fe7aebb4SHans de Goede	select ACPI_WMI if ACPI
334520f53aSDaniel Vetter	select ACPI_VIDEO if ACPI
34fec0445cSChris Wilson	select SYNC_FILE
35f0e204e0SMullati, Siva	select IOSF_MBI if X86
36a25bcaddSNicholas Piggin	select CRC32
37a57942bfSTakashi Iwai	select SND_HDA_I915 if SND_HDA_CORE
389c229127SNeil Armstrong	select CEC_CORE if CEC_NOTIFIER
39534a6687SChristoph Hellwig	select VMAP_PFN
40d1487389SThomas Hellström	select DRM_TTM
416387a3c4SArunpravin	select DRM_BUDDY
421e3dc1d8STomas Winkler	select AUXILIARY_BUS
434520f53aSDaniel Vetter	help
444520f53aSDaniel Vetter	  Choose this option if you have a system that has "Intel Graphics
454520f53aSDaniel Vetter	  Media Accelerator" or "HD Graphics" integrated graphics,
464520f53aSDaniel Vetter	  including 830M, 845G, 852GM, 855GM, 865G, 915G, 945G, 965G,
474520f53aSDaniel Vetter	  G35, G41, G43, G45 chipsets and Celeron, Pentium, Core i3,
484520f53aSDaniel Vetter	  Core i5, Core i7 as well as Atom CPUs with integrated graphics.
49352cb4efSJani Nikula
50352cb4efSJani Nikula	  This driver is used by the Intel driver in X.org 6.8 and
51352cb4efSJani Nikula	  XFree86 4.4 and above. It replaces the older i830 module that
52352cb4efSJani Nikula	  supported a subset of the hardware in older X.org releases.
534520f53aSDaniel Vetter
544520f53aSDaniel Vetter	  Note that the older i810/i815 chipsets require the use of the
554520f53aSDaniel Vetter	  i810 driver instead, and the Atom z5xx series has an entirely
564520f53aSDaniel Vetter	  different implementation.
574520f53aSDaniel Vetter
58352cb4efSJani Nikula	  If "M" is selected, the module will be called i915.
59352cb4efSJani Nikula
607ef5ef5cSJani Nikulaconfig DRM_I915_FORCE_PROBE
61157821fbSRodrigo Vivi	string "Force probe i915 for selected Intel hardware IDs"
627ef5ef5cSJani Nikula	depends on DRM_I915
637ef5ef5cSJani Nikula	help
647ef5ef5cSJani Nikula	  This is the default value for the i915.force_probe module
657ef5ef5cSJani Nikula	  parameter. Using the module parameter overrides this option.
664520f53aSDaniel Vetter
6779c901c9SJani Nikula	  Force probe the i915 driver for Intel graphics devices that are
6879c901c9SJani Nikula	  recognized but not properly supported by this kernel version. Force
6979c901c9SJani Nikula	  probing an unsupported device taints the kernel. It is recommended to
7079c901c9SJani Nikula	  upgrade to a kernel version with proper support as soon as it is
7179c901c9SJani Nikula	  available.
727ef5ef5cSJani Nikula
73157821fbSRodrigo Vivi	  It can also be used to block the probe of recognized and fully
74157821fbSRodrigo Vivi	  supported devices.
75157821fbSRodrigo Vivi
767ef5ef5cSJani Nikula	  Use "" to disable force probe. If in doubt, use this.
777ef5ef5cSJani Nikula
78157821fbSRodrigo Vivi	  Use "<pci-id>[,<pci-id>,...]" to force probe the i915 for listed
797ef5ef5cSJani Nikula	  devices. For example, "4500" or "4500,4571".
807ef5ef5cSJani Nikula
8179c901c9SJani Nikula	  Use "*" to force probe the driver for all known devices. Not
8279c901c9SJani Nikula	  recommended.
83755412e2SChris Wilson
84157821fbSRodrigo Vivi	  Use "!" right before the ID to block the probe of the device. For
85157821fbSRodrigo Vivi	  example, "4500,!4571" forces the probe of 4500 and blocks the probe of
86157821fbSRodrigo Vivi	  4571.
87157821fbSRodrigo Vivi
88157821fbSRodrigo Vivi	  Use "!*" to block the probe of the driver for all known devices.
89157821fbSRodrigo Vivi
9098a2f411SChris Wilsonconfig DRM_I915_CAPTURE_ERROR
9198a2f411SChris Wilson	bool "Enable capturing GPU state following a hang"
9298a2f411SChris Wilson	depends on DRM_I915
9398a2f411SChris Wilson	default y
9498a2f411SChris Wilson	help
9598a2f411SChris Wilson	  This option enables capturing the GPU state when a hang is detected.
9698a2f411SChris Wilson	  This information is vital for triaging hangs and assists in debugging.
97ddae4d7aSJani Nikula	  Please report any hang for triaging according to:
98f8e9325fSJani Nikula	    https://drm.pages.freedesktop.org/intel-docs/how-to-file-i915-bugs.html
9998a2f411SChris Wilson
10098a2f411SChris Wilson	  If in doubt, say "Y".
10198a2f411SChris Wilson
1020a97015dSChris Wilsonconfig DRM_I915_COMPRESS_ERROR
1030a97015dSChris Wilson	bool "Compress GPU error state"
1040a97015dSChris Wilson	depends on DRM_I915_CAPTURE_ERROR
1050a97015dSChris Wilson	select ZLIB_DEFLATE
1060a97015dSChris Wilson	default y
1070a97015dSChris Wilson	help
1080a97015dSChris Wilson	  This option selects ZLIB_DEFLATE if it isn't already
1090a97015dSChris Wilson	  selected and causes any error state captured upon a GPU hang
1100a97015dSChris Wilson	  to be compressed using zlib.
1110a97015dSChris Wilson
1120a97015dSChris Wilson	  If in doubt, say "Y".
1130a97015dSChris Wilson
114755412e2SChris Wilsonconfig DRM_I915_USERPTR
115755412e2SChris Wilson	bool "Always enable userptr support"
116755412e2SChris Wilson	depends on DRM_I915
117755412e2SChris Wilson	select MMU_NOTIFIER
118755412e2SChris Wilson	default y
119755412e2SChris Wilson	help
120755412e2SChris Wilson	  This option selects CONFIG_MMU_NOTIFIER if it isn't already
121755412e2SChris Wilson	  selected to enabled full userptr support.
122755412e2SChris Wilson
123755412e2SChris Wilson	  If in doubt, say "Y".
124643a24b6STvrtko Ursulin
1258b750bf7SChristoph Hellwigconfig DRM_I915_GVT_KVMGT
1268b750bf7SChristoph Hellwig	tristate "Enable KVM host support Intel GVT-g graphics virtualization"
1270ad35fedSZhi Wang	depends on DRM_I915
128338b655aSArnd Bergmann	depends on KVM_X86
1297093f5ffSZhenyu Wang	depends on 64BIT
130de858a05SArnd Bergmann	depends on VFIO
1318b750bf7SChristoph Hellwig	select DRM_I915_GVT
1328b750bf7SChristoph Hellwig	select KVM_EXTERNAL_WRITE_TRACKING
1338bf8c5eeSChristoph Hellwig	select VFIO_MDEV
1348b750bf7SChristoph Hellwig
1350ad35fedSZhi Wang	help
1360ad35fedSZhi Wang	  Choose this option if you want to enable Intel GVT-g graphics
1370ad35fedSZhi Wang	  virtualization technology host support with integrated graphics.
1380ad35fedSZhi Wang	  With GVT-g, it's possible to have one integrated graphics
1398b750bf7SChristoph Hellwig	  device shared by multiple VMs under KVM.
1400ad35fedSZhi Wang
1418b750bf7SChristoph Hellwig	  Note that this driver only supports newer device from Broadwell on.
1428b750bf7SChristoph Hellwig	  For further information and setup guide, you can visit:
1431a00897eSZhenyu Wang	  https://github.com/intel/gvt-linux/wiki.
1440ad35fedSZhi Wang
1450ad35fedSZhi Wang	  If in doubt, say "N".
1460ad35fedSZhi Wang
147e6aa7136SDaniele Ceraolo Spurioconfig DRM_I915_PXP
148c974cf01SRodrigo Vivi	bool "Enable Intel PXP support"
149e6aa7136SDaniele Ceraolo Spurio	depends on DRM_I915
150e6aa7136SDaniele Ceraolo Spurio	depends on INTEL_MEI && INTEL_MEI_PXP
151e6aa7136SDaniele Ceraolo Spurio	default n
152e6aa7136SDaniele Ceraolo Spurio	help
153c974cf01SRodrigo Vivi	  PXP (Protected Xe Path) is an i915 component, available on graphics
154c974cf01SRodrigo Vivi	  version 12 and newer GPUs, that helps to establish the hardware
155c974cf01SRodrigo Vivi	  protected session and manage the status of the alive software session,
156c974cf01SRodrigo Vivi	  as well as its life cycle.
157e6aa7136SDaniele Ceraolo Spurio
15891888b5bSImre Deakconfig DRM_I915_DP_TUNNEL
15991888b5bSImre Deak	bool "Enable DP tunnel support"
16091888b5bSImre Deak	depends on DRM_I915
16191888b5bSImre Deak	depends on USB4
16291888b5bSImre Deak	select DRM_DISPLAY_DP_TUNNEL
16391888b5bSImre Deak	default y
16491888b5bSImre Deak	help
16591888b5bSImre Deak	  Choose this option to detect DP tunnels and enable the Bandwidth
16691888b5bSImre Deak	  Allocation mode for such tunnels. This allows using the maximum
16791888b5bSImre Deak	  resolution allowed by the link BW on all displays sharing the
16891888b5bSImre Deak	  link BW, for instance on a Thunderbolt link.
16991888b5bSImre Deak
17091888b5bSImre Deak	  If in doubt, say "Y".
17191888b5bSImre Deak
172643a24b6STvrtko Ursulinmenu "drm/i915 Debugging"
173643a24b6STvrtko Ursulindepends on DRM_I915
174643a24b6STvrtko Ursulindepends on EXPERT
1758636a1f9SMasahiro Yamadasource "drivers/gpu/drm/i915/Kconfig.debug"
176643a24b6STvrtko Ursulinendmenu
1777ce99d24SChris Wilson
1787ce99d24SChris Wilsonmenu "drm/i915 Profile Guided Optimisation"
1797ce99d24SChris Wilson	visible if EXPERT
1807ce99d24SChris Wilson	depends on DRM_I915
1817ce99d24SChris Wilson	source "drivers/gpu/drm/i915/Kconfig.profile"
1827ce99d24SChris Wilsonendmenu
183d9d54a53SChris Wilson
1840b93efcaSRandy Dunlapconfig DRM_I915_GVT
1850b93efcaSRandy Dunlap	bool
186