1# 2# Drm device configuration 3# 4# This driver provides support for the 5# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher. 6# 7menuconfig DRM 8 tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)" 9 depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && HAS_DMA 10 select HDMI 11 select FB_CMDLINE 12 select I2C 13 select I2C_ALGOBIT 14 select DMA_SHARED_BUFFER 15 select SYNC_FILE 16 help 17 Kernel-level support for the Direct Rendering Infrastructure (DRI) 18 introduced in XFree86 4.0. If you say Y here, you need to select 19 the module that's right for your graphics card from the list below. 20 These modules provide support for synchronization, security, and 21 DMA transfers. Please see <http://dri.sourceforge.net/> for more 22 details. You should also select and configure AGP 23 (/dev/agpgart) support if it is available for your platform. 24 25config DRM_MIPI_DSI 26 bool 27 depends on DRM 28 29config DRM_DP_AUX_CHARDEV 30 bool "DRM DP AUX Interface" 31 depends on DRM 32 help 33 Choose this option to enable a /dev/drm_dp_auxN node that allows to 34 read and write values to arbitrary DPCD registers on the DP aux 35 channel. 36 37config DRM_DEBUG_MM 38 bool "Insert extra checks and debug info into the DRM range managers" 39 default n 40 depends on DRM=y 41 depends on STACKTRACE_SUPPORT 42 select STACKDEPOT 43 help 44 Enable allocation tracking of memory manager and leak detection on 45 shutdown. 46 47 Recommended for driver developers only. 48 49 If in doubt, say "N". 50 51config DRM_DEBUG_MM_SELFTEST 52 tristate "kselftests for DRM range manager (struct drm_mm)" 53 depends on DRM 54 depends on DEBUG_KERNEL 55 select PRIME_NUMBERS 56 select DRM_LIB_RANDOM 57 default n 58 help 59 This option provides a kernel module that can be used to test 60 the DRM range manager (drm_mm) and its API. This option is not 61 useful for distributions or general kernels, but only for kernel 62 developers working on DRM and associated drivers. 63 64 If in doubt, say "N". 65 66config DRM_KMS_HELPER 67 tristate 68 depends on DRM 69 help 70 CRTC helpers for KMS drivers. 71 72config DRM_KMS_FB_HELPER 73 bool 74 depends on DRM_KMS_HELPER 75 select FB 76 select FRAMEBUFFER_CONSOLE if !EXPERT 77 select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE 78 select FB_SYS_FOPS 79 select FB_SYS_FILLRECT 80 select FB_SYS_COPYAREA 81 select FB_SYS_IMAGEBLIT 82 select FB_CFB_FILLRECT 83 select FB_CFB_COPYAREA 84 select FB_CFB_IMAGEBLIT 85 select FB_DEFERRED_IO 86 help 87 FBDEV helpers for KMS drivers. 88 89config DRM_FBDEV_EMULATION 90 bool "Enable legacy fbdev support for your modesetting driver" 91 depends on DRM 92 select DRM_KMS_HELPER 93 select DRM_KMS_FB_HELPER 94 default y 95 help 96 Choose this option if you have a need for the legacy fbdev 97 support. Note that this support also provides the linux console 98 support on top of your modesetting driver. 99 100 If in doubt, say "Y". 101 102config DRM_LOAD_EDID_FIRMWARE 103 bool "Allow to specify an EDID data set instead of probing for it" 104 depends on DRM_KMS_HELPER 105 help 106 Say Y here, if you want to use EDID data to be loaded from the 107 /lib/firmware directory or one of the provided built-in 108 data sets. This may be necessary, if the graphics adapter or 109 monitor are unable to provide appropriate EDID data. Since this 110 feature is provided as a workaround for broken hardware, the 111 default case is N. Details and instructions how to build your own 112 EDID data are given in Documentation/EDID/HOWTO.txt. 113 114config DRM_TTM 115 tristate 116 depends on DRM && MMU 117 help 118 GPU memory management subsystem for devices with multiple 119 GPU memory types. Will be enabled automatically if a device driver 120 uses it. 121 122config DRM_GEM_CMA_HELPER 123 bool 124 depends on DRM 125 help 126 Choose this if you need the GEM CMA helper functions 127 128config DRM_KMS_CMA_HELPER 129 bool 130 depends on DRM 131 select DRM_GEM_CMA_HELPER 132 select DRM_KMS_FB_HELPER 133 select FB_SYS_FILLRECT 134 select FB_SYS_COPYAREA 135 select FB_SYS_IMAGEBLIT 136 help 137 Choose this if you need the KMS CMA helper functions 138 139config DRM_VM 140 bool 141 depends on DRM && MMU 142 143source "drivers/gpu/drm/i2c/Kconfig" 144 145source "drivers/gpu/drm/arm/Kconfig" 146 147config DRM_RADEON 148 tristate "ATI Radeon" 149 depends on DRM && PCI && MMU 150 select FW_LOADER 151 select DRM_KMS_HELPER 152 select DRM_TTM 153 select POWER_SUPPLY 154 select HWMON 155 select BACKLIGHT_CLASS_DEVICE 156 select BACKLIGHT_LCD_SUPPORT 157 select INTERVAL_TREE 158 help 159 Choose this option if you have an ATI Radeon graphics card. There 160 are both PCI and AGP versions. You don't need to choose this to 161 run the Radeon in plain VGA mode. 162 163 If M is selected, the module will be called radeon. 164 165source "drivers/gpu/drm/radeon/Kconfig" 166 167config DRM_AMDGPU 168 tristate "AMD GPU" 169 depends on DRM && PCI && MMU 170 select FW_LOADER 171 select DRM_KMS_HELPER 172 select DRM_TTM 173 select POWER_SUPPLY 174 select HWMON 175 select BACKLIGHT_CLASS_DEVICE 176 select BACKLIGHT_LCD_SUPPORT 177 select INTERVAL_TREE 178 help 179 Choose this option if you have a recent AMD Radeon graphics card. 180 181 If M is selected, the module will be called amdgpu. 182 183source "drivers/gpu/drm/amd/amdgpu/Kconfig" 184 185source "drivers/gpu/drm/nouveau/Kconfig" 186 187source "drivers/gpu/drm/i915/Kconfig" 188 189config DRM_VGEM 190 tristate "Virtual GEM provider" 191 depends on DRM 192 help 193 Choose this option to get a virtual graphics memory manager, 194 as used by Mesa's software renderer for enhanced performance. 195 If M is selected the module will be called vgem. 196 197 198source "drivers/gpu/drm/exynos/Kconfig" 199 200source "drivers/gpu/drm/rockchip/Kconfig" 201 202source "drivers/gpu/drm/vmwgfx/Kconfig" 203 204source "drivers/gpu/drm/gma500/Kconfig" 205 206source "drivers/gpu/drm/udl/Kconfig" 207 208source "drivers/gpu/drm/ast/Kconfig" 209 210source "drivers/gpu/drm/mgag200/Kconfig" 211 212source "drivers/gpu/drm/cirrus/Kconfig" 213 214source "drivers/gpu/drm/armada/Kconfig" 215 216source "drivers/gpu/drm/atmel-hlcdc/Kconfig" 217 218source "drivers/gpu/drm/rcar-du/Kconfig" 219 220source "drivers/gpu/drm/shmobile/Kconfig" 221 222source "drivers/gpu/drm/sun4i/Kconfig" 223 224source "drivers/gpu/drm/omapdrm/Kconfig" 225 226source "drivers/gpu/drm/tilcdc/Kconfig" 227 228source "drivers/gpu/drm/qxl/Kconfig" 229 230source "drivers/gpu/drm/bochs/Kconfig" 231 232source "drivers/gpu/drm/virtio/Kconfig" 233 234source "drivers/gpu/drm/msm/Kconfig" 235 236source "drivers/gpu/drm/fsl-dcu/Kconfig" 237 238source "drivers/gpu/drm/tegra/Kconfig" 239 240source "drivers/gpu/drm/panel/Kconfig" 241 242source "drivers/gpu/drm/bridge/Kconfig" 243 244source "drivers/gpu/drm/sti/Kconfig" 245 246source "drivers/gpu/drm/amd/amdkfd/Kconfig" 247 248source "drivers/gpu/drm/imx/Kconfig" 249 250source "drivers/gpu/drm/vc4/Kconfig" 251 252source "drivers/gpu/drm/etnaviv/Kconfig" 253 254source "drivers/gpu/drm/arc/Kconfig" 255 256source "drivers/gpu/drm/hisilicon/Kconfig" 257 258source "drivers/gpu/drm/mediatek/Kconfig" 259 260source "drivers/gpu/drm/zte/Kconfig" 261 262source "drivers/gpu/drm/mxsfb/Kconfig" 263 264source "drivers/gpu/drm/meson/Kconfig" 265 266source "drivers/gpu/drm/tinydrm/Kconfig" 267 268# Keep legacy drivers last 269 270menuconfig DRM_LEGACY 271 bool "Enable legacy drivers (DANGEROUS)" 272 depends on DRM && MMU 273 select DRM_VM 274 help 275 Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous 276 APIs to user-space, which can be used to circumvent access 277 restrictions and other security measures. For backwards compatibility 278 those drivers are still available, but their use is highly 279 inadvisable and might harm your system. 280 281 You are recommended to use the safe modeset-only drivers instead, and 282 perform 3D emulation in user-space. 283 284 Unless you have strong reasons to go rogue, say "N". 285 286if DRM_LEGACY 287 288config DRM_TDFX 289 tristate "3dfx Banshee/Voodoo3+" 290 depends on DRM && PCI 291 help 292 Choose this option if you have a 3dfx Banshee or Voodoo3 (or later), 293 graphics card. If M is selected, the module will be called tdfx. 294 295config DRM_R128 296 tristate "ATI Rage 128" 297 depends on DRM && PCI 298 select FW_LOADER 299 help 300 Choose this option if you have an ATI Rage 128 graphics card. If M 301 is selected, the module will be called r128. AGP support for 302 this card is strongly suggested (unless you have a PCI version). 303 304config DRM_I810 305 tristate "Intel I810" 306 # !PREEMPT because of missing ioctl locking 307 depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN) 308 help 309 Choose this option if you have an Intel I810 graphics card. If M is 310 selected, the module will be called i810. AGP support is required 311 for this driver to work. 312 313config DRM_MGA 314 tristate "Matrox g200/g400" 315 depends on DRM && PCI 316 select FW_LOADER 317 help 318 Choose this option if you have a Matrox G200, G400 or G450 graphics 319 card. If M is selected, the module will be called mga. AGP 320 support is required for this driver to work. 321 322config DRM_SIS 323 tristate "SiS video cards" 324 depends on DRM && AGP 325 depends on FB_SIS || FB_SIS=n 326 help 327 Choose this option if you have a SiS 630 or compatible video 328 chipset. If M is selected the module will be called sis. AGP 329 support is required for this driver to work. 330 331config DRM_VIA 332 tristate "Via unichrome video cards" 333 depends on DRM && PCI 334 help 335 Choose this option if you have a Via unichrome or compatible video 336 chipset. If M is selected the module will be called via. 337 338config DRM_SAVAGE 339 tristate "Savage video cards" 340 depends on DRM && PCI 341 help 342 Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister 343 chipset. If M is selected the module will be called savage. 344 345endif # DRM_LEGACY 346 347config DRM_LIB_RANDOM 348 bool 349 default n 350