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