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_GPUSVM if !UML && DEVICE_PRIVATE 43 select DRM_SCHED 44 select MMU_NOTIFIER 45 select WANT_DEV_COREDUMP 46 select AUXILIARY_BUS 47 select HMM_MIRROR 48 help 49 Experimental driver for Intel Xe series GPUs 50 51 If "M" is selected, the module will be called xe. 52 53config DRM_XE_DISPLAY 54 bool "Enable display support" 55 depends on DRM_XE && DRM_XE=m && HAS_IOPORT 56 select FB_IOMEM_HELPERS if DRM_FBDEV_EMULATION 57 select I2C 58 select I2C_ALGOBIT 59 default y 60 help 61 Disable this option only if you want to compile out display support. 62 63config DRM_XE_DP_TUNNEL 64 bool "Enable DP tunnel support" 65 depends on DRM_XE_DISPLAY 66 depends on USB4 67 select DRM_DISPLAY_DP_TUNNEL 68 default y 69 help 70 Choose this option to detect DP tunnels and enable the Bandwidth 71 Allocation mode for such tunnels. This allows using the maximum 72 resolution allowed by the link BW on all displays sharing the 73 link BW, for instance on a Thunderbolt link. 74 75 If in doubt say "Y". 76 77config DRM_XE_DEVMEM_MIRROR 78 bool "Enable device memory mirror" 79 depends on DRM_XE 80 select GET_FREE_REGION 81 default y 82 help 83 Disable this option only if you want to compile out without device 84 memory mirror. Will reduce KMD memory footprint when disabled. 85 86config DRM_XE_FORCE_PROBE 87 string "Force probe xe for selected Intel hardware IDs" 88 depends on DRM_XE 89 help 90 This is the default value for the xe.force_probe module 91 parameter. Using the module parameter overrides this option. 92 93 Force probe the xe for Intel graphics devices that are 94 recognized but not properly supported by this kernel version. It is 95 recommended to upgrade to a kernel version with proper support as soon 96 as it is available. 97 98 It can also be used to block the probe of recognized and fully 99 supported devices. 100 101 Use "" to disable force probe. If in doubt, use this. 102 103 Use "<pci-id>[,<pci-id>,...]" to force probe the xe for listed 104 devices. For example, "4500" or "4500,4571". 105 106 Use "*" to force probe the driver for all known devices. 107 108 Use "!" right before the ID to block the probe of the device. For 109 example, "4500,!4571" forces the probe of 4500 and blocks the probe of 110 4571. 111 112 Use "!*" to block the probe of the driver for all known devices. 113 114menu "drm/Xe Debugging" 115depends on DRM_XE 116depends on EXPERT 117source "drivers/gpu/drm/xe/Kconfig.debug" 118endmenu 119 120menu "drm/xe Profile Guided Optimisation" 121 visible if EXPERT 122 depends on DRM_XE 123 source "drivers/gpu/drm/xe/Kconfig.profile" 124endmenu 125