1c0e09200SDave Airlie# 2c0e09200SDave Airlie# Drm device configuration 3c0e09200SDave Airlie# 4c0e09200SDave Airlie# This driver provides support for the 5c0e09200SDave Airlie# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher. 6c0e09200SDave Airlie# 7c0e09200SDave Airliemenuconfig DRM 8c0e09200SDave Airlie tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)" 9cc6a36f2SGeert Uytterhoeven depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU && HAS_DMA 1010a85120SThierry Reding select HDMI 11eaf99c74SChris Wilson select FB_CMDLINE 1257a6297eSDave Airlie select I2C 1357a6297eSDave Airlie select I2C_ALGOBIT 143248877eSDave Airlie select DMA_SHARED_BUFFER 15c0e09200SDave Airlie help 16c0e09200SDave Airlie Kernel-level support for the Direct Rendering Infrastructure (DRI) 17c0e09200SDave Airlie introduced in XFree86 4.0. If you say Y here, you need to select 18c0e09200SDave Airlie the module that's right for your graphics card from the list below. 19c0e09200SDave Airlie These modules provide support for synchronization, security, and 20c0e09200SDave Airlie DMA transfers. Please see <http://dri.sourceforge.net/> for more 21c0e09200SDave Airlie details. You should also select and configure AGP 22dcdb1674SJordan Crouse (/dev/agpgart) support if it is available for your platform. 23c0e09200SDave Airlie 24068a0023SAndrzej Hajdaconfig DRM_MIPI_DSI 25068a0023SAndrzej Hajda bool 26068a0023SAndrzej Hajda depends on DRM 27068a0023SAndrzej Hajda 28e94cb37bSRafael Antognolliconfig DRM_DP_AUX_CHARDEV 29e94cb37bSRafael Antognolli bool "DRM DP AUX Interface" 30e94cb37bSRafael Antognolli depends on DRM 31e94cb37bSRafael Antognolli help 32e94cb37bSRafael Antognolli Choose this option to enable a /dev/drm_dp_auxN node that allows to 33e94cb37bSRafael Antognolli read and write values to arbitrary DPCD registers on the DP aux 34e94cb37bSRafael Antognolli channel. 35e94cb37bSRafael Antognolli 366fcefd56SDave Airlieconfig DRM_KMS_HELPER 3713a8195bSDave Airlie tristate 3813a8195bSDave Airlie depends on DRM 3992b6f89fSDaniel Vetter help 4092b6f89fSDaniel Vetter CRTC helpers for KMS drivers. 4192b6f89fSDaniel Vetter 4292b6f89fSDaniel Vetterconfig DRM_KMS_FB_HELPER 4392b6f89fSDaniel Vetter bool 4492b6f89fSDaniel Vetter depends on DRM_KMS_HELPER 4513a8195bSDave Airlie select FB 466a108a14SDavid Rientjes select FRAMEBUFFER_CONSOLE if !EXPERT 47bf5192edSDave Airlie select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE 48cbb1a82eSArchit Taneja select FB_SYS_FOPS 49742547b7SArchit Taneja select FB_SYS_FILLRECT 50742547b7SArchit Taneja select FB_SYS_COPYAREA 51742547b7SArchit Taneja select FB_SYS_IMAGEBLIT 52742547b7SArchit Taneja select FB_CFB_FILLRECT 53742547b7SArchit Taneja select FB_CFB_COPYAREA 54742547b7SArchit Taneja select FB_CFB_IMAGEBLIT 55eaa434deSNoralf Trønnes select FB_DEFERRED_IO 5613a8195bSDave Airlie help 5792b6f89fSDaniel Vetter FBDEV helpers for KMS drivers. 5813a8195bSDave Airlie 59a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION 60a03fdcb1SArchit Taneja bool "Enable legacy fbdev support for your modesetting driver" 61a03fdcb1SArchit Taneja depends on DRM 62a03fdcb1SArchit Taneja select DRM_KMS_HELPER 63a03fdcb1SArchit Taneja select DRM_KMS_FB_HELPER 64a03fdcb1SArchit Taneja default y 65a03fdcb1SArchit Taneja help 66a03fdcb1SArchit Taneja Choose this option if you have a need for the legacy fbdev 67a03fdcb1SArchit Taneja support. Note that this support also provides the linux console 68a03fdcb1SArchit Taneja support on top of your modesetting driver. 69a03fdcb1SArchit Taneja 70a03fdcb1SArchit Taneja If in doubt, say "Y". 71a03fdcb1SArchit Taneja 72da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE 73da0df92bSCarsten Emde bool "Allow to specify an EDID data set instead of probing for it" 74da0df92bSCarsten Emde depends on DRM_KMS_HELPER 75da0df92bSCarsten Emde help 76da0df92bSCarsten Emde Say Y here, if you want to use EDID data to be loaded from the 77da0df92bSCarsten Emde /lib/firmware directory or one of the provided built-in 78da0df92bSCarsten Emde data sets. This may be necessary, if the graphics adapter or 79da0df92bSCarsten Emde monitor are unable to provide appropriate EDID data. Since this 80da0df92bSCarsten Emde feature is provided as a workaround for broken hardware, the 81da0df92bSCarsten Emde default case is N. Details and instructions how to build your own 82da0df92bSCarsten Emde EDID data are given in Documentation/EDID/HOWTO.txt. 83da0df92bSCarsten Emde 84ba4e7d97SThomas Hellstromconfig DRM_TTM 85771fe6b9SJerome Glisse tristate 86ba4e7d97SThomas Hellstrom depends on DRM 87ba4e7d97SThomas Hellstrom help 88ba4e7d97SThomas Hellstrom GPU memory management subsystem for devices with multiple 89ba4e7d97SThomas Hellstrom GPU memory types. Will be enabled automatically if a device driver 90ba4e7d97SThomas Hellstrom uses it. 91ba4e7d97SThomas Hellstrom 92b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER 93b9d47450SSascha Hauer bool 94e1c7e324SChristoph Hellwig depends on DRM 95b9d47450SSascha Hauer help 96b9d47450SSascha Hauer Choose this if you need the GEM CMA helper functions 97b9d47450SSascha Hauer 982e3b3c42SLars-Peter Clausenconfig DRM_KMS_CMA_HELPER 992e3b3c42SLars-Peter Clausen bool 100e1c7e324SChristoph Hellwig depends on DRM 1012e3b3c42SLars-Peter Clausen select DRM_GEM_CMA_HELPER 10292b6f89fSDaniel Vetter select DRM_KMS_FB_HELPER 1032e3b3c42SLars-Peter Clausen select FB_SYS_FILLRECT 1042e3b3c42SLars-Peter Clausen select FB_SYS_COPYAREA 1052e3b3c42SLars-Peter Clausen select FB_SYS_IMAGEBLIT 1062e3b3c42SLars-Peter Clausen help 1072e3b3c42SLars-Peter Clausen Choose this if you need the KMS CMA helper functions 1082e3b3c42SLars-Peter Clausen 1096504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig" 1106504d0d9SRob Clark 1118e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig" 1128e22d792SLiviu Dudau 113c0e09200SDave Airlieconfig DRM_RADEON 114c0e09200SDave Airlie tristate "ATI Radeon" 115c0e09200SDave Airlie depends on DRM && PCI 11670967ab9SBen Hutchings select FW_LOADER 117a0cdc649SDave Airlie select DRM_KMS_HELPER 118a0cdc649SDave Airlie select DRM_TTM 1195d9b7e2dSDave Airlie select POWER_SUPPLY 12021a8122aSAlex Deucher select HWMON 12114adc892SChristian König select BACKLIGHT_CLASS_DEVICE 12233610527SThierry Reding select BACKLIGHT_LCD_SUPPORT 1230aea5e4aSAlex Deucher select INTERVAL_TREE 124c0e09200SDave Airlie help 125c0e09200SDave Airlie Choose this option if you have an ATI Radeon graphics card. There 126c0e09200SDave Airlie are both PCI and AGP versions. You don't need to choose this to 127c0e09200SDave Airlie run the Radeon in plain VGA mode. 128c0e09200SDave Airlie 129c0e09200SDave Airlie If M is selected, the module will be called radeon. 130c0e09200SDave Airlie 131f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig" 132f71d0187SDave Airlie 133d38ceaf9SAlex Deucherconfig DRM_AMDGPU 134d38ceaf9SAlex Deucher tristate "AMD GPU" 135d38ceaf9SAlex Deucher depends on DRM && PCI 136d38ceaf9SAlex Deucher select FW_LOADER 137d38ceaf9SAlex Deucher select DRM_KMS_HELPER 138d38ceaf9SAlex Deucher select DRM_TTM 139d38ceaf9SAlex Deucher select POWER_SUPPLY 140d38ceaf9SAlex Deucher select HWMON 141d38ceaf9SAlex Deucher select BACKLIGHT_CLASS_DEVICE 142b325a789SThierry Reding select BACKLIGHT_LCD_SUPPORT 143d38ceaf9SAlex Deucher select INTERVAL_TREE 144d38ceaf9SAlex Deucher help 145d38ceaf9SAlex Deucher Choose this option if you have a recent AMD Radeon graphics card. 146d38ceaf9SAlex Deucher 147d38ceaf9SAlex Deucher If M is selected, the module will be called amdgpu. 148d38ceaf9SAlex Deucher 149d38ceaf9SAlex Deuchersource "drivers/gpu/drm/amd/amdgpu/Kconfig" 150a8fe58ceSMaruthi Bayyavarapu 151f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig" 152f3c93cbdSBen Skeggs 1534520f53aSDaniel Vettersource "drivers/gpu/drm/i915/Kconfig" 15499486b8eSJosh Triplett 155502e95c6SZach Reiznerconfig DRM_VGEM 156502e95c6SZach Reizner tristate "Virtual GEM provider" 157502e95c6SZach Reizner depends on DRM 158502e95c6SZach Reizner help 159502e95c6SZach Reizner Choose this option to get a virtual graphics memory manager, 160502e95c6SZach Reizner as used by Mesa's software renderer for enhanced performance. 161502e95c6SZach Reizner If M is selected the module will be called vgem. 162502e95c6SZach Reizner 163502e95c6SZach Reizner 1641c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig" 1655a7b74beSThomas Hellstrom 1662048e328SMark Yaosource "drivers/gpu/drm/rockchip/Kconfig" 1672048e328SMark Yao 1685a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig" 16991c75492SAlan Cox 17091c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig" 17191c75492SAlan Cox 1725320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig" 173312fec14SDave Airlie 174312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig" 175312fec14SDave Airlie 176414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig" 177f9aa76a8SDave Airlie 178f9aa76a8SDave Airliesource "drivers/gpu/drm/cirrus/Kconfig" 17951c13278SLaurent Pinchart 18096f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig" 18196f60e37SRussell King 1821a396789SBoris Brezillonsource "drivers/gpu/drm/atmel-hlcdc/Kconfig" 1831a396789SBoris Brezillon 1844bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig" 1854bf8e196SLaurent Pinchart 18651c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig" 187d8f4a9edSThierry Reding 1889026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig" 1899026e0d1SMaxime Ripard 1908bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig" 191ca18e142SDave Airlie 19216ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig" 193f64122c1SDave Airlie 194f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig" 195c8afe684SRob Clark 1960a6659bdSGerd Hoffmannsource "drivers/gpu/drm/bochs/Kconfig" 1970a6659bdSGerd Hoffmann 198dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig" 199dc5698e8SDave Airlie 200c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig" 201dee8268fSThierry Reding 202109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig" 203109eee2fSJianwei Wang 204dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig" 205aead40eaSThierry Reding 206aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig" 207f2cb3148SBenjamin Gaignard 208a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig" 209a33ee95fSThierry Reding 210f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig" 2114a488a7aSOded Gabbay 2124a488a7aSOded Gabbaysource "drivers/gpu/drm/amd/amdkfd/Kconfig" 2136556f7f8SPhilipp Zabel 2146556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig" 215c8b75bcaSEric Anholt 216c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig" 217a8c21a54SThe etnaviv authors 218a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig" 21951dacf20SCarlos Palminha 22051dacf20SCarlos Palminhasource "drivers/gpu/drm/arc/Kconfig" 22123e7b2abSXinliang Liu 22223e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig" 223119f5173SCK Hu 224119f5173SCK Husource "drivers/gpu/drm/mediatek/Kconfig" 225d92d9c3aSDavid Herrmann 226*bbbe775eSNeil Armstrongsource "drivers/gpu/drm/meson/Kconfig" 227*bbbe775eSNeil Armstrong 228d92d9c3aSDavid Herrmann# Keep legacy drivers last 229d92d9c3aSDavid Herrmann 230d92d9c3aSDavid Herrmannmenuconfig DRM_LEGACY 231d92d9c3aSDavid Herrmann bool "Enable legacy drivers (DANGEROUS)" 232d92d9c3aSDavid Herrmann depends on DRM 233d92d9c3aSDavid Herrmann help 234d92d9c3aSDavid Herrmann Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous 235d92d9c3aSDavid Herrmann APIs to user-space, which can be used to circumvent access 236d92d9c3aSDavid Herrmann restrictions and other security measures. For backwards compatibility 237d92d9c3aSDavid Herrmann those drivers are still available, but their use is highly 238d92d9c3aSDavid Herrmann inadvisable and might harm your system. 239d92d9c3aSDavid Herrmann 240d92d9c3aSDavid Herrmann You are recommended to use the safe modeset-only drivers instead, and 241d92d9c3aSDavid Herrmann perform 3D emulation in user-space. 242d92d9c3aSDavid Herrmann 243d92d9c3aSDavid Herrmann Unless you have strong reasons to go rogue, say "N". 244d92d9c3aSDavid Herrmann 245d92d9c3aSDavid Herrmannif DRM_LEGACY 246d92d9c3aSDavid Herrmann 247d92d9c3aSDavid Herrmannconfig DRM_TDFX 248d92d9c3aSDavid Herrmann tristate "3dfx Banshee/Voodoo3+" 249d92d9c3aSDavid Herrmann depends on DRM && PCI 250d92d9c3aSDavid Herrmann help 251d92d9c3aSDavid Herrmann Choose this option if you have a 3dfx Banshee or Voodoo3 (or later), 252d92d9c3aSDavid Herrmann graphics card. If M is selected, the module will be called tdfx. 253d92d9c3aSDavid Herrmann 254d92d9c3aSDavid Herrmannconfig DRM_R128 255d92d9c3aSDavid Herrmann tristate "ATI Rage 128" 256d92d9c3aSDavid Herrmann depends on DRM && PCI 257d92d9c3aSDavid Herrmann select FW_LOADER 258d92d9c3aSDavid Herrmann help 259d92d9c3aSDavid Herrmann Choose this option if you have an ATI Rage 128 graphics card. If M 260d92d9c3aSDavid Herrmann is selected, the module will be called r128. AGP support for 261d92d9c3aSDavid Herrmann this card is strongly suggested (unless you have a PCI version). 262d92d9c3aSDavid Herrmann 263d92d9c3aSDavid Herrmannconfig DRM_I810 264d92d9c3aSDavid Herrmann tristate "Intel I810" 265d92d9c3aSDavid Herrmann # !PREEMPT because of missing ioctl locking 266d92d9c3aSDavid Herrmann depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN) 267d92d9c3aSDavid Herrmann help 268d92d9c3aSDavid Herrmann Choose this option if you have an Intel I810 graphics card. If M is 269d92d9c3aSDavid Herrmann selected, the module will be called i810. AGP support is required 270d92d9c3aSDavid Herrmann for this driver to work. 271d92d9c3aSDavid Herrmann 272d92d9c3aSDavid Herrmannconfig DRM_MGA 273d92d9c3aSDavid Herrmann tristate "Matrox g200/g400" 274d92d9c3aSDavid Herrmann depends on DRM && PCI 275d92d9c3aSDavid Herrmann select FW_LOADER 276d92d9c3aSDavid Herrmann help 277d92d9c3aSDavid Herrmann Choose this option if you have a Matrox G200, G400 or G450 graphics 278d92d9c3aSDavid Herrmann card. If M is selected, the module will be called mga. AGP 279d92d9c3aSDavid Herrmann support is required for this driver to work. 280d92d9c3aSDavid Herrmann 281d92d9c3aSDavid Herrmannconfig DRM_SIS 282d92d9c3aSDavid Herrmann tristate "SiS video cards" 283d92d9c3aSDavid Herrmann depends on DRM && AGP 284d92d9c3aSDavid Herrmann depends on FB_SIS || FB_SIS=n 285d92d9c3aSDavid Herrmann help 286d92d9c3aSDavid Herrmann Choose this option if you have a SiS 630 or compatible video 287d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called sis. AGP 288d92d9c3aSDavid Herrmann support is required for this driver to work. 289d92d9c3aSDavid Herrmann 290d92d9c3aSDavid Herrmannconfig DRM_VIA 291d92d9c3aSDavid Herrmann tristate "Via unichrome video cards" 292d92d9c3aSDavid Herrmann depends on DRM && PCI 293d92d9c3aSDavid Herrmann help 294d92d9c3aSDavid Herrmann Choose this option if you have a Via unichrome or compatible video 295d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called via. 296d92d9c3aSDavid Herrmann 297d92d9c3aSDavid Herrmannconfig DRM_SAVAGE 298d92d9c3aSDavid Herrmann tristate "Savage video cards" 299d92d9c3aSDavid Herrmann depends on DRM && PCI 300d92d9c3aSDavid Herrmann help 301d92d9c3aSDavid Herrmann Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister 302d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called savage. 303d92d9c3aSDavid Herrmann 304d92d9c3aSDavid Herrmannendif # DRM_LEGACY 305