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 365705670dSChris Wilsonconfig DRM_DEBUG_MM 375705670dSChris Wilson bool "Insert extra checks and debug info into the DRM range managers" 385705670dSChris Wilson default n 39cd456f8dSChris Wilson depends on DRM=y 40*4b514e10SChris Wilson depends on STACKTRACE_SUPPORT 415705670dSChris Wilson select STACKDEPOT 425705670dSChris Wilson help 435705670dSChris Wilson Enable allocation tracking of memory manager and leak detection on 445705670dSChris Wilson shutdown. 455705670dSChris Wilson 465705670dSChris Wilson Recommended for driver developers only. 475705670dSChris Wilson 485705670dSChris Wilson If in doubt, say "N". 495705670dSChris Wilson 506fcefd56SDave Airlieconfig DRM_KMS_HELPER 5113a8195bSDave Airlie tristate 5213a8195bSDave Airlie depends on DRM 5392b6f89fSDaniel Vetter help 5492b6f89fSDaniel Vetter CRTC helpers for KMS drivers. 5592b6f89fSDaniel Vetter 5692b6f89fSDaniel Vetterconfig DRM_KMS_FB_HELPER 5792b6f89fSDaniel Vetter bool 5892b6f89fSDaniel Vetter depends on DRM_KMS_HELPER 5913a8195bSDave Airlie select FB 606a108a14SDavid Rientjes select FRAMEBUFFER_CONSOLE if !EXPERT 61bf5192edSDave Airlie select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE 62cbb1a82eSArchit Taneja select FB_SYS_FOPS 63742547b7SArchit Taneja select FB_SYS_FILLRECT 64742547b7SArchit Taneja select FB_SYS_COPYAREA 65742547b7SArchit Taneja select FB_SYS_IMAGEBLIT 66742547b7SArchit Taneja select FB_CFB_FILLRECT 67742547b7SArchit Taneja select FB_CFB_COPYAREA 68742547b7SArchit Taneja select FB_CFB_IMAGEBLIT 69eaa434deSNoralf Trønnes select FB_DEFERRED_IO 7013a8195bSDave Airlie help 7192b6f89fSDaniel Vetter FBDEV helpers for KMS drivers. 7213a8195bSDave Airlie 73a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION 74a03fdcb1SArchit Taneja bool "Enable legacy fbdev support for your modesetting driver" 75a03fdcb1SArchit Taneja depends on DRM 76a03fdcb1SArchit Taneja select DRM_KMS_HELPER 77a03fdcb1SArchit Taneja select DRM_KMS_FB_HELPER 78a03fdcb1SArchit Taneja default y 79a03fdcb1SArchit Taneja help 80a03fdcb1SArchit Taneja Choose this option if you have a need for the legacy fbdev 81a03fdcb1SArchit Taneja support. Note that this support also provides the linux console 82a03fdcb1SArchit Taneja support on top of your modesetting driver. 83a03fdcb1SArchit Taneja 84a03fdcb1SArchit Taneja If in doubt, say "Y". 85a03fdcb1SArchit Taneja 86da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE 87da0df92bSCarsten Emde bool "Allow to specify an EDID data set instead of probing for it" 88da0df92bSCarsten Emde depends on DRM_KMS_HELPER 89da0df92bSCarsten Emde help 90da0df92bSCarsten Emde Say Y here, if you want to use EDID data to be loaded from the 91da0df92bSCarsten Emde /lib/firmware directory or one of the provided built-in 92da0df92bSCarsten Emde data sets. This may be necessary, if the graphics adapter or 93da0df92bSCarsten Emde monitor are unable to provide appropriate EDID data. Since this 94da0df92bSCarsten Emde feature is provided as a workaround for broken hardware, the 95da0df92bSCarsten Emde default case is N. Details and instructions how to build your own 96da0df92bSCarsten Emde EDID data are given in Documentation/EDID/HOWTO.txt. 97da0df92bSCarsten Emde 98ba4e7d97SThomas Hellstromconfig DRM_TTM 99771fe6b9SJerome Glisse tristate 100ba4e7d97SThomas Hellstrom depends on DRM 101ba4e7d97SThomas Hellstrom help 102ba4e7d97SThomas Hellstrom GPU memory management subsystem for devices with multiple 103ba4e7d97SThomas Hellstrom GPU memory types. Will be enabled automatically if a device driver 104ba4e7d97SThomas Hellstrom uses it. 105ba4e7d97SThomas Hellstrom 106b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER 107b9d47450SSascha Hauer bool 108e1c7e324SChristoph Hellwig depends on DRM 109b9d47450SSascha Hauer help 110b9d47450SSascha Hauer Choose this if you need the GEM CMA helper functions 111b9d47450SSascha Hauer 1122e3b3c42SLars-Peter Clausenconfig DRM_KMS_CMA_HELPER 1132e3b3c42SLars-Peter Clausen bool 114e1c7e324SChristoph Hellwig depends on DRM 1152e3b3c42SLars-Peter Clausen select DRM_GEM_CMA_HELPER 11692b6f89fSDaniel Vetter select DRM_KMS_FB_HELPER 1172e3b3c42SLars-Peter Clausen select FB_SYS_FILLRECT 1182e3b3c42SLars-Peter Clausen select FB_SYS_COPYAREA 1192e3b3c42SLars-Peter Clausen select FB_SYS_IMAGEBLIT 1202e3b3c42SLars-Peter Clausen help 1212e3b3c42SLars-Peter Clausen Choose this if you need the KMS CMA helper functions 1222e3b3c42SLars-Peter Clausen 1236504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig" 1246504d0d9SRob Clark 1258e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig" 1268e22d792SLiviu Dudau 127c0e09200SDave Airlieconfig DRM_RADEON 128c0e09200SDave Airlie tristate "ATI Radeon" 129c0e09200SDave Airlie depends on DRM && PCI 13070967ab9SBen Hutchings select FW_LOADER 131a0cdc649SDave Airlie select DRM_KMS_HELPER 132a0cdc649SDave Airlie select DRM_TTM 1335d9b7e2dSDave Airlie select POWER_SUPPLY 13421a8122aSAlex Deucher select HWMON 13514adc892SChristian König select BACKLIGHT_CLASS_DEVICE 13633610527SThierry Reding select BACKLIGHT_LCD_SUPPORT 1370aea5e4aSAlex Deucher select INTERVAL_TREE 138c0e09200SDave Airlie help 139c0e09200SDave Airlie Choose this option if you have an ATI Radeon graphics card. There 140c0e09200SDave Airlie are both PCI and AGP versions. You don't need to choose this to 141c0e09200SDave Airlie run the Radeon in plain VGA mode. 142c0e09200SDave Airlie 143c0e09200SDave Airlie If M is selected, the module will be called radeon. 144c0e09200SDave Airlie 145f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig" 146f71d0187SDave Airlie 147d38ceaf9SAlex Deucherconfig DRM_AMDGPU 148d38ceaf9SAlex Deucher tristate "AMD GPU" 149d38ceaf9SAlex Deucher depends on DRM && PCI 150d38ceaf9SAlex Deucher select FW_LOADER 151d38ceaf9SAlex Deucher select DRM_KMS_HELPER 152d38ceaf9SAlex Deucher select DRM_TTM 153d38ceaf9SAlex Deucher select POWER_SUPPLY 154d38ceaf9SAlex Deucher select HWMON 155d38ceaf9SAlex Deucher select BACKLIGHT_CLASS_DEVICE 156b325a789SThierry Reding select BACKLIGHT_LCD_SUPPORT 157d38ceaf9SAlex Deucher select INTERVAL_TREE 158d38ceaf9SAlex Deucher help 159d38ceaf9SAlex Deucher Choose this option if you have a recent AMD Radeon graphics card. 160d38ceaf9SAlex Deucher 161d38ceaf9SAlex Deucher If M is selected, the module will be called amdgpu. 162d38ceaf9SAlex Deucher 163d38ceaf9SAlex Deuchersource "drivers/gpu/drm/amd/amdgpu/Kconfig" 164a8fe58ceSMaruthi Bayyavarapu 165f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig" 166f3c93cbdSBen Skeggs 1674520f53aSDaniel Vettersource "drivers/gpu/drm/i915/Kconfig" 16899486b8eSJosh Triplett 169502e95c6SZach Reiznerconfig DRM_VGEM 170502e95c6SZach Reizner tristate "Virtual GEM provider" 171502e95c6SZach Reizner depends on DRM 172502e95c6SZach Reizner help 173502e95c6SZach Reizner Choose this option to get a virtual graphics memory manager, 174502e95c6SZach Reizner as used by Mesa's software renderer for enhanced performance. 175502e95c6SZach Reizner If M is selected the module will be called vgem. 176502e95c6SZach Reizner 177502e95c6SZach Reizner 1781c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig" 1795a7b74beSThomas Hellstrom 1802048e328SMark Yaosource "drivers/gpu/drm/rockchip/Kconfig" 1812048e328SMark Yao 1825a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig" 18391c75492SAlan Cox 18491c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig" 18591c75492SAlan Cox 1865320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig" 187312fec14SDave Airlie 188312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig" 189312fec14SDave Airlie 190414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig" 191f9aa76a8SDave Airlie 192f9aa76a8SDave Airliesource "drivers/gpu/drm/cirrus/Kconfig" 19351c13278SLaurent Pinchart 19496f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig" 19596f60e37SRussell King 1961a396789SBoris Brezillonsource "drivers/gpu/drm/atmel-hlcdc/Kconfig" 1971a396789SBoris Brezillon 1984bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig" 1994bf8e196SLaurent Pinchart 20051c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig" 201d8f4a9edSThierry Reding 2029026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig" 2039026e0d1SMaxime Ripard 2048bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig" 205ca18e142SDave Airlie 20616ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig" 207f64122c1SDave Airlie 208f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig" 209c8afe684SRob Clark 2100a6659bdSGerd Hoffmannsource "drivers/gpu/drm/bochs/Kconfig" 2110a6659bdSGerd Hoffmann 212dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig" 213dc5698e8SDave Airlie 214c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig" 215dee8268fSThierry Reding 216109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig" 217109eee2fSJianwei Wang 218dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig" 219aead40eaSThierry Reding 220aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig" 221f2cb3148SBenjamin Gaignard 222a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig" 223a33ee95fSThierry Reding 224f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig" 2254a488a7aSOded Gabbay 2264a488a7aSOded Gabbaysource "drivers/gpu/drm/amd/amdkfd/Kconfig" 2276556f7f8SPhilipp Zabel 2286556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig" 229c8b75bcaSEric Anholt 230c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig" 231a8c21a54SThe etnaviv authors 232a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig" 23351dacf20SCarlos Palminha 23451dacf20SCarlos Palminhasource "drivers/gpu/drm/arc/Kconfig" 23523e7b2abSXinliang Liu 23623e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig" 237119f5173SCK Hu 238119f5173SCK Husource "drivers/gpu/drm/mediatek/Kconfig" 239d92d9c3aSDavid Herrmann 240d92d9c3aSDavid Herrmann# Keep legacy drivers last 241d92d9c3aSDavid Herrmann 242d92d9c3aSDavid Herrmannmenuconfig DRM_LEGACY 243d92d9c3aSDavid Herrmann bool "Enable legacy drivers (DANGEROUS)" 244d92d9c3aSDavid Herrmann depends on DRM 245d92d9c3aSDavid Herrmann help 246d92d9c3aSDavid Herrmann Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous 247d92d9c3aSDavid Herrmann APIs to user-space, which can be used to circumvent access 248d92d9c3aSDavid Herrmann restrictions and other security measures. For backwards compatibility 249d92d9c3aSDavid Herrmann those drivers are still available, but their use is highly 250d92d9c3aSDavid Herrmann inadvisable and might harm your system. 251d92d9c3aSDavid Herrmann 252d92d9c3aSDavid Herrmann You are recommended to use the safe modeset-only drivers instead, and 253d92d9c3aSDavid Herrmann perform 3D emulation in user-space. 254d92d9c3aSDavid Herrmann 255d92d9c3aSDavid Herrmann Unless you have strong reasons to go rogue, say "N". 256d92d9c3aSDavid Herrmann 257d92d9c3aSDavid Herrmannif DRM_LEGACY 258d92d9c3aSDavid Herrmann 259d92d9c3aSDavid Herrmannconfig DRM_TDFX 260d92d9c3aSDavid Herrmann tristate "3dfx Banshee/Voodoo3+" 261d92d9c3aSDavid Herrmann depends on DRM && PCI 262d92d9c3aSDavid Herrmann help 263d92d9c3aSDavid Herrmann Choose this option if you have a 3dfx Banshee or Voodoo3 (or later), 264d92d9c3aSDavid Herrmann graphics card. If M is selected, the module will be called tdfx. 265d92d9c3aSDavid Herrmann 266d92d9c3aSDavid Herrmannconfig DRM_R128 267d92d9c3aSDavid Herrmann tristate "ATI Rage 128" 268d92d9c3aSDavid Herrmann depends on DRM && PCI 269d92d9c3aSDavid Herrmann select FW_LOADER 270d92d9c3aSDavid Herrmann help 271d92d9c3aSDavid Herrmann Choose this option if you have an ATI Rage 128 graphics card. If M 272d92d9c3aSDavid Herrmann is selected, the module will be called r128. AGP support for 273d92d9c3aSDavid Herrmann this card is strongly suggested (unless you have a PCI version). 274d92d9c3aSDavid Herrmann 275d92d9c3aSDavid Herrmannconfig DRM_I810 276d92d9c3aSDavid Herrmann tristate "Intel I810" 277d92d9c3aSDavid Herrmann # !PREEMPT because of missing ioctl locking 278d92d9c3aSDavid Herrmann depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN) 279d92d9c3aSDavid Herrmann help 280d92d9c3aSDavid Herrmann Choose this option if you have an Intel I810 graphics card. If M is 281d92d9c3aSDavid Herrmann selected, the module will be called i810. AGP support is required 282d92d9c3aSDavid Herrmann for this driver to work. 283d92d9c3aSDavid Herrmann 284d92d9c3aSDavid Herrmannconfig DRM_MGA 285d92d9c3aSDavid Herrmann tristate "Matrox g200/g400" 286d92d9c3aSDavid Herrmann depends on DRM && PCI 287d92d9c3aSDavid Herrmann select FW_LOADER 288d92d9c3aSDavid Herrmann help 289d92d9c3aSDavid Herrmann Choose this option if you have a Matrox G200, G400 or G450 graphics 290d92d9c3aSDavid Herrmann card. If M is selected, the module will be called mga. AGP 291d92d9c3aSDavid Herrmann support is required for this driver to work. 292d92d9c3aSDavid Herrmann 293d92d9c3aSDavid Herrmannconfig DRM_SIS 294d92d9c3aSDavid Herrmann tristate "SiS video cards" 295d92d9c3aSDavid Herrmann depends on DRM && AGP 296d92d9c3aSDavid Herrmann depends on FB_SIS || FB_SIS=n 297d92d9c3aSDavid Herrmann help 298d92d9c3aSDavid Herrmann Choose this option if you have a SiS 630 or compatible video 299d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called sis. AGP 300d92d9c3aSDavid Herrmann support is required for this driver to work. 301d92d9c3aSDavid Herrmann 302d92d9c3aSDavid Herrmannconfig DRM_VIA 303d92d9c3aSDavid Herrmann tristate "Via unichrome video cards" 304d92d9c3aSDavid Herrmann depends on DRM && PCI 305d92d9c3aSDavid Herrmann help 306d92d9c3aSDavid Herrmann Choose this option if you have a Via unichrome or compatible video 307d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called via. 308d92d9c3aSDavid Herrmann 309d92d9c3aSDavid Herrmannconfig DRM_SAVAGE 310d92d9c3aSDavid Herrmann tristate "Savage video cards" 311d92d9c3aSDavid Herrmann depends on DRM && PCI 312d92d9c3aSDavid Herrmann help 313d92d9c3aSDavid Herrmann Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister 314d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called savage. 315d92d9c3aSDavid Herrmann 316d92d9c3aSDavid Herrmannendif # DRM_LEGACY 317