1# SPDX-License-Identifier: GPL-2.0-only 2config DRM_I915 3 tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics" 4 depends on DRM 5 depends on X86 && PCI 6 depends on !PREEMPT_RT 7 select INTEL_GTT 8 select INTERVAL_TREE 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 13 select DRM_DISPLAY_DP_HELPER 14 select DRM_DISPLAY_HDCP_HELPER 15 select DRM_DISPLAY_HDMI_HELPER 16 select DRM_DISPLAY_HELPER 17 select DRM_KMS_HELPER 18 select DRM_PANEL 19 select DRM_MIPI_DSI 20 select RELAY 21 select IRQ_WORK 22 # i915 depends on ACPI_VIDEO when ACPI is enabled 23 # but for select to work, need to select ACPI_VIDEO's dependencies, ick 24 select BACKLIGHT_CLASS_DEVICE if ACPI 25 select INPUT if ACPI 26 select ACPI_VIDEO if ACPI 27 select ACPI_BUTTON if ACPI 28 select SYNC_FILE 29 select IOSF_MBI if X86 30 select CRC32 31 select SND_HDA_I915 if SND_HDA_CORE 32 select CEC_CORE if CEC_NOTIFIER 33 select VMAP_PFN 34 select DRM_TTM 35 select DRM_BUDDY 36 help 37 Choose this option if you have a system that has "Intel Graphics 38 Media Accelerator" or "HD Graphics" integrated graphics, 39 including 830M, 845G, 852GM, 855GM, 865G, 915G, 945G, 965G, 40 G35, G41, G43, G45 chipsets and Celeron, Pentium, Core i3, 41 Core i5, Core i7 as well as Atom CPUs with integrated graphics. 42 43 This driver is used by the Intel driver in X.org 6.8 and 44 XFree86 4.4 and above. It replaces the older i830 module that 45 supported a subset of the hardware in older X.org releases. 46 47 Note that the older i810/i815 chipsets require the use of the 48 i810 driver instead, and the Atom z5xx series has an entirely 49 different implementation. 50 51 If "M" is selected, the module will be called i915. 52 53config DRM_I915_FORCE_PROBE 54 string "Force probe driver for selected new Intel hardware" 55 depends on DRM_I915 56 help 57 This is the default value for the i915.force_probe module 58 parameter. Using the module parameter overrides this option. 59 60 Force probe the driver for new Intel graphics devices that are 61 recognized but not properly supported by this kernel version. It is 62 recommended to upgrade to a kernel version with proper support as soon 63 as it is available. 64 65 Use "" to disable force probe. If in doubt, use this. 66 67 Use "<pci-id>[,<pci-id>,...]" to force probe the driver for listed 68 devices. For example, "4500" or "4500,4571". 69 70 Use "*" to force probe the driver for all known devices. 71 72config DRM_I915_CAPTURE_ERROR 73 bool "Enable capturing GPU state following a hang" 74 depends on DRM_I915 75 default y 76 help 77 This option enables capturing the GPU state when a hang is detected. 78 This information is vital for triaging hangs and assists in debugging. 79 Please report any hang for triaging according to: 80 https://gitlab.freedesktop.org/drm/intel/-/wikis/How-to-file-i915-bugs 81 82 If in doubt, say "Y". 83 84config DRM_I915_COMPRESS_ERROR 85 bool "Compress GPU error state" 86 depends on DRM_I915_CAPTURE_ERROR 87 select ZLIB_DEFLATE 88 default y 89 help 90 This option selects ZLIB_DEFLATE if it isn't already 91 selected and causes any error state captured upon a GPU hang 92 to be compressed using zlib. 93 94 If in doubt, say "Y". 95 96config DRM_I915_USERPTR 97 bool "Always enable userptr support" 98 depends on DRM_I915 99 select MMU_NOTIFIER 100 default y 101 help 102 This option selects CONFIG_MMU_NOTIFIER if it isn't already 103 selected to enabled full userptr support. 104 105 If in doubt, say "Y". 106 107config DRM_I915_GVT 108 bool "Enable Intel GVT-g graphics virtualization host support" 109 depends on DRM_I915 110 depends on X86 111 depends on 64BIT 112 default n 113 help 114 Choose this option if you want to enable Intel GVT-g graphics 115 virtualization technology host support with integrated graphics. 116 With GVT-g, it's possible to have one integrated graphics 117 device shared by multiple VMs under different hypervisors. 118 119 Note that at least one hypervisor like Xen or KVM is required for 120 this driver to work, and it only supports newer device from 121 Broadwell+. For further information and setup guide, you can 122 visit: http://01.org/igvt-g. 123 124 Now it's just a stub to support the modifications of i915 for 125 GVT device model. It requires at least one MPT modules for Xen/KVM 126 and other components of GVT device model to work. Use it under 127 you own risk. 128 129 If in doubt, say "N". 130 131config DRM_I915_GVT_KVMGT 132 tristate "Enable KVM/VFIO support for Intel GVT-g" 133 depends on DRM_I915_GVT 134 depends on KVM 135 depends on VFIO_MDEV 136 select KVM_EXTERNAL_WRITE_TRACKING 137 default n 138 help 139 Choose this option if you want to enable KVMGT support for 140 Intel GVT-g. 141 142config DRM_I915_PXP 143 bool "Enable Intel PXP support" 144 depends on DRM_I915 145 depends on INTEL_MEI && INTEL_MEI_PXP 146 default n 147 help 148 PXP (Protected Xe Path) is an i915 component, available on graphics 149 version 12 and newer GPUs, that helps to establish the hardware 150 protected session and manage the status of the alive software session, 151 as well as its life cycle. 152 153menu "drm/i915 Debugging" 154depends on DRM_I915 155depends on EXPERT 156source "drivers/gpu/drm/i915/Kconfig.debug" 157endmenu 158 159menu "drm/i915 Profile Guided Optimisation" 160 visible if EXPERT 161 depends on DRM_I915 162 source "drivers/gpu/drm/i915/Kconfig.profile" 163endmenu 164 165menu "drm/i915 Unstable Evolution" 166 visible if EXPERT && STAGING && BROKEN 167 depends on DRM_I915 168 source "drivers/gpu/drm/i915/Kconfig.unstable" 169endmenu 170