1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2c0e09200SDave Airlie# 3c0e09200SDave Airlie# Drm device configuration 4c0e09200SDave Airlie# 5c0e09200SDave Airlie# This driver provides support for the 6c0e09200SDave Airlie# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher. 7c0e09200SDave Airlie# 8c0e09200SDave Airliemenuconfig DRM 9c0e09200SDave Airlie tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)" 1062a0d98aSBenjamin Gaignard depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && HAS_DMA 118d70f395SHans de Goede select DRM_PANEL_ORIENTATION_QUIRKS 1210a85120SThierry Reding select HDMI 13eaf99c74SChris Wilson select FB_CMDLINE 1457a6297eSDave Airlie select I2C 1557a6297eSDave Airlie select I2C_ALGOBIT 163248877eSDave Airlie select DMA_SHARED_BUFFER 1796260142SGustavo Padovan select SYNC_FILE 18bfe3911aSChris Wilson# gallium uses SYS_kcmp for os_same_file_description() to de-duplicate 19bfe3911aSChris Wilson# device and dmabuf fd. Let's make sure that is available for our userspace. 20bfe3911aSChris Wilson select KCMP 219a758d87SThomas Zimmermann select VIDEO_NOMODESET 22c0e09200SDave Airlie help 23c0e09200SDave Airlie Kernel-level support for the Direct Rendering Infrastructure (DRI) 24c0e09200SDave Airlie introduced in XFree86 4.0. If you say Y here, you need to select 25c0e09200SDave Airlie the module that's right for your graphics card from the list below. 26c0e09200SDave Airlie These modules provide support for synchronization, security, and 27c0e09200SDave Airlie DMA transfers. Please see <http://dri.sourceforge.net/> for more 28c0e09200SDave Airlie details. You should also select and configure AGP 29dcdb1674SJordan Crouse (/dev/agpgart) support if it is available for your platform. 30c0e09200SDave Airlie 31174102f4SNoralf Trønnesconfig DRM_MIPI_DBI 32174102f4SNoralf Trønnes tristate 33174102f4SNoralf Trønnes depends on DRM 34eb7de496SRandy Dunlap select DRM_KMS_HELPER 35174102f4SNoralf Trønnes 36068a0023SAndrzej Hajdaconfig DRM_MIPI_DSI 37068a0023SAndrzej Hajda bool 38068a0023SAndrzej Hajda depends on DRM 39068a0023SAndrzej Hajda 405705670dSChris Wilsonconfig DRM_DEBUG_MM 415705670dSChris Wilson bool "Insert extra checks and debug info into the DRM range managers" 425705670dSChris Wilson default n 43cd456f8dSChris Wilson depends on DRM=y 444b514e10SChris Wilson depends on STACKTRACE_SUPPORT 455705670dSChris Wilson select STACKDEPOT 465705670dSChris Wilson help 475705670dSChris Wilson Enable allocation tracking of memory manager and leak detection on 485705670dSChris Wilson shutdown. 495705670dSChris Wilson 505705670dSChris Wilson Recommended for driver developers only. 515705670dSChris Wilson 525705670dSChris Wilson If in doubt, say "N". 535705670dSChris Wilson 5484ec6728SJim Cromieconfig DRM_USE_DYNAMIC_DEBUG 5584ec6728SJim Cromie bool "use dynamic debug to implement drm.debug" 56*bb2ff6c2SVille Syrjälä default n 57*bb2ff6c2SVille Syrjälä depends on BROKEN 5884ec6728SJim Cromie depends on DRM 5984ec6728SJim Cromie depends on DYNAMIC_DEBUG || DYNAMIC_DEBUG_CORE 6084ec6728SJim Cromie depends on JUMP_LABEL 6184ec6728SJim Cromie help 6284ec6728SJim Cromie Use dynamic-debug to avoid drm_debug_enabled() runtime overheads. 6384ec6728SJim Cromie Due to callsite counts in DRM drivers (~4k in amdgpu) and 56 6484ec6728SJim Cromie bytes per callsite, the .data costs can be substantial, and 6584ec6728SJim Cromie are therefore configurable. 6684ec6728SJim Cromie 678f456104SJosé Expósitoconfig DRM_KUNIT_TEST 688f456104SJosé Expósito tristate "KUnit tests for DRM" if !KUNIT_ALL_TESTS 69ba8f16cdSMaíra Canal depends on DRM && KUNIT 70ba8f16cdSMaíra Canal select PRIME_NUMBERS 71ba8f16cdSMaíra Canal select DRM_DISPLAY_DP_HELPER 72ba8f16cdSMaíra Canal select DRM_DISPLAY_HELPER 73ba8f16cdSMaíra Canal select DRM_LIB_RANDOM 748f456104SJosé Expósito select DRM_KMS_HELPER 75ba8f16cdSMaíra Canal select DRM_BUDDY 76ba8f16cdSMaíra Canal select DRM_EXPORT_FOR_TESTS if m 778f456104SJosé Expósito default KUNIT_ALL_TESTS 788f456104SJosé Expósito help 798f456104SJosé Expósito This builds unit tests for DRM. This option is not useful for 808f456104SJosé Expósito distributions or general kernels, but only for kernel 818f456104SJosé Expósito developers working on DRM and associated drivers. 828f456104SJosé Expósito 838f456104SJosé Expósito For more information on KUnit and unit tests in general, 848f456104SJosé Expósito please refer to the KUnit documentation in 858f456104SJosé Expósito Documentation/dev-tools/kunit/. 868f456104SJosé Expósito 878f456104SJosé Expósito If in doubt, say "N". 888f456104SJosé Expósito 896fcefd56SDave Airlieconfig DRM_KMS_HELPER 9013a8195bSDave Airlie tristate 9113a8195bSDave Airlie depends on DRM 9292b6f89fSDaniel Vetter help 9392b6f89fSDaniel Vetter CRTC helpers for KMS drivers. 9492b6f89fSDaniel Vetter 9512a280c7SLyude Paulconfig DRM_DEBUG_DP_MST_TOPOLOGY_REFS 9612a280c7SLyude Paul bool "Enable refcount backtrace history in the DP MST helpers" 97d6d07ca1SGuenter Roeck depends on STACKTRACE_SUPPORT 9812a280c7SLyude Paul select STACKDEPOT 9912a280c7SLyude Paul depends on DRM_KMS_HELPER 10012a280c7SLyude Paul depends on DEBUG_KERNEL 10112a280c7SLyude Paul depends on EXPERT 10212a280c7SLyude Paul help 10312a280c7SLyude Paul Enables debug tracing for topology refs in DRM's DP MST helpers. A 10412a280c7SLyude Paul history of each topology reference/dereference will be printed to the 10512a280c7SLyude Paul kernel log once a port or branch device's topology refcount reaches 0. 10612a280c7SLyude Paul 10712a280c7SLyude Paul This has the potential to use a lot of memory and print some very 10812a280c7SLyude Paul large kernel messages. If in doubt, say "N". 10912a280c7SLyude Paul 110cd06ab2fSJani Nikulaconfig DRM_DEBUG_MODESET_LOCK 111cd06ab2fSJani Nikula bool "Enable backtrace history for lock contention" 112cd06ab2fSJani Nikula depends on STACKTRACE_SUPPORT 113cd06ab2fSJani Nikula depends on DEBUG_KERNEL 114cd06ab2fSJani Nikula depends on EXPERT 115cd06ab2fSJani Nikula select STACKDEPOT 116cd06ab2fSJani Nikula default y if DEBUG_WW_MUTEX_SLOWPATH 117cd06ab2fSJani Nikula help 118cd06ab2fSJani Nikula Enable debug tracing of failures to gracefully handle drm modeset lock 119cd06ab2fSJani Nikula contention. A history of each drm modeset lock path hitting -EDEADLK 120cd06ab2fSJani Nikula will be saved until gracefully handled, and the backtrace will be 121cd06ab2fSJani Nikula printed when attempting to lock a contended lock. 122cd06ab2fSJani Nikula 123cd06ab2fSJani Nikula If in doubt, say "N". 124cd06ab2fSJani Nikula 125a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION 126a03fdcb1SArchit Taneja bool "Enable legacy fbdev support for your modesetting driver" 1279d6366e7SArnd Bergmann depends on DRM_KMS_HELPER 1289d6366e7SArnd Bergmann depends on FB=y || FB=DRM_KMS_HELPER 12991185d55SThomas Zimmermann select FB_CFB_FILLRECT 13091185d55SThomas Zimmermann select FB_CFB_COPYAREA 13191185d55SThomas Zimmermann select FB_CFB_IMAGEBLIT 13291185d55SThomas Zimmermann select FB_DEFERRED_IO 13391185d55SThomas Zimmermann select FB_SYS_FOPS 13491185d55SThomas Zimmermann select FB_SYS_FILLRECT 13591185d55SThomas Zimmermann select FB_SYS_COPYAREA 13691185d55SThomas Zimmermann select FB_SYS_IMAGEBLIT 13791185d55SThomas Zimmermann select FRAMEBUFFER_CONSOLE if !EXPERT 13891185d55SThomas Zimmermann select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE 139a03fdcb1SArchit Taneja default y 140a03fdcb1SArchit Taneja help 141a03fdcb1SArchit Taneja Choose this option if you have a need for the legacy fbdev 142a03fdcb1SArchit Taneja support. Note that this support also provides the linux console 143a03fdcb1SArchit Taneja support on top of your modesetting driver. 144a03fdcb1SArchit Taneja 145a03fdcb1SArchit Taneja If in doubt, say "Y". 146a03fdcb1SArchit Taneja 1475f152576SXinliang Liuconfig DRM_FBDEV_OVERALLOC 1485f152576SXinliang Liu int "Overallocation of the fbdev buffer" 1495f152576SXinliang Liu depends on DRM_FBDEV_EMULATION 1505f152576SXinliang Liu default 100 1515f152576SXinliang Liu help 1525f152576SXinliang Liu Defines the fbdev buffer overallocation in percent. Default 1535f152576SXinliang Liu is 100. Typical values for double buffering will be 200, 1545f152576SXinliang Liu triple buffering 300. 1555f152576SXinliang Liu 1564be9bd10SNeil Armstrongconfig DRM_FBDEV_LEAK_PHYS_SMEM 1574be9bd10SNeil Armstrong bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)" 1584be9bd10SNeil Armstrong depends on DRM_FBDEV_EMULATION && EXPERT 1594be9bd10SNeil Armstrong default n 1604be9bd10SNeil Armstrong help 1614be9bd10SNeil Armstrong In order to keep user-space compatibility, we want in certain 1624be9bd10SNeil Armstrong use-cases to keep leaking the fbdev physical address to the 1634be9bd10SNeil Armstrong user-space program handling the fbdev buffer. 1644be9bd10SNeil Armstrong This affects, not only, Amlogic, Allwinner or Rockchip devices 1654be9bd10SNeil Armstrong with ARM Mali GPUs using an userspace Blob. 1664be9bd10SNeil Armstrong This option is not supported by upstream developers and should be 1674be9bd10SNeil Armstrong removed as soon as possible and be considered as a broken and 1684be9bd10SNeil Armstrong legacy behaviour from a modern fbdev device driver. 1694be9bd10SNeil Armstrong 1704be9bd10SNeil Armstrong Please send any bug reports when using this to your proprietary 1714be9bd10SNeil Armstrong software vendor that requires this. 1724be9bd10SNeil Armstrong 1734be9bd10SNeil Armstrong If in doubt, say "N" or spread the word to your closed source 1744be9bd10SNeil Armstrong library vendor. 1754be9bd10SNeil Armstrong 176da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE 177da0df92bSCarsten Emde bool "Allow to specify an EDID data set instead of probing for it" 17853fd40a9SJani Nikula depends on DRM 179da0df92bSCarsten Emde help 180da0df92bSCarsten Emde Say Y here, if you want to use EDID data to be loaded from the 181da0df92bSCarsten Emde /lib/firmware directory or one of the provided built-in 182da0df92bSCarsten Emde data sets. This may be necessary, if the graphics adapter or 183da0df92bSCarsten Emde monitor are unable to provide appropriate EDID data. Since this 184da0df92bSCarsten Emde feature is provided as a workaround for broken hardware, the 185da0df92bSCarsten Emde default case is N. Details and instructions how to build your own 18672ef5e52SMauro Carvalho Chehab EDID data are given in Documentation/admin-guide/edid.rst. 187da0df92bSCarsten Emde 1881e0f6642SThomas Zimmermannsource "drivers/gpu/drm/display/Kconfig" 1892c6d1fffSHans Verkuil 190ba4e7d97SThomas Hellstromconfig DRM_TTM 191771fe6b9SJerome Glisse tristate 19262a0d98aSBenjamin Gaignard depends on DRM && MMU 193ba4e7d97SThomas Hellstrom help 194ba4e7d97SThomas Hellstrom GPU memory management subsystem for devices with multiple 195ba4e7d97SThomas Hellstrom GPU memory types. Will be enabled automatically if a device driver 196ba4e7d97SThomas Hellstrom uses it. 197ba4e7d97SThomas Hellstrom 1986387a3c4SArunpravinconfig DRM_BUDDY 1996387a3c4SArunpravin tristate 2006387a3c4SArunpravin depends on DRM 2016387a3c4SArunpravin help 2026387a3c4SArunpravin A page based buddy allocator 2036387a3c4SArunpravin 20485438a8dSThomas Zimmermannconfig DRM_VRAM_HELPER 20585438a8dSThomas Zimmermann tristate 20685438a8dSThomas Zimmermann depends on DRM 20785438a8dSThomas Zimmermann help 20885438a8dSThomas Zimmermann Helpers for VRAM memory management 20985438a8dSThomas Zimmermann 210ff540b76SGerd Hoffmannconfig DRM_TTM_HELPER 211ff540b76SGerd Hoffmann tristate 212ff540b76SGerd Hoffmann depends on DRM 213ff540b76SGerd Hoffmann select DRM_TTM 214ff540b76SGerd Hoffmann help 215ff540b76SGerd Hoffmann Helpers for ttm-based gem objects 216ff540b76SGerd Hoffmann 2174a83c26aSDanilo Krummrichconfig DRM_GEM_DMA_HELPER 2184b2b5e14SThomas Zimmermann tristate 219e1c7e324SChristoph Hellwig depends on DRM 220b9d47450SSascha Hauer help 2214a83c26aSDanilo Krummrich Choose this if you need the GEM DMA helper functions 222b9d47450SSascha Hauer 2232194a63aSNoralf Trønnesconfig DRM_GEM_SHMEM_HELPER 2244b2b5e14SThomas Zimmermann tristate 2258b93d1d7SDaniel Vetter depends on DRM && MMU 2262194a63aSNoralf Trønnes help 2272194a63aSNoralf Trønnes Choose this if you need the GEM shmem helper functions 2282194a63aSNoralf Trønnes 2291b1f42d8SLucas Stachconfig DRM_SCHED 2301b1f42d8SLucas Stach tristate 2311b1f42d8SLucas Stach depends on DRM 2321b1f42d8SLucas Stach 2336504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig" 2346504d0d9SRob Clark 2358e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig" 2368e22d792SLiviu Dudau 237f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig" 238f71d0187SDave Airlie 239d38ceaf9SAlex Deuchersource "drivers/gpu/drm/amd/amdgpu/Kconfig" 240a8fe58ceSMaruthi Bayyavarapu 241f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig" 242f3c93cbdSBen Skeggs 2434520f53aSDaniel Vettersource "drivers/gpu/drm/i915/Kconfig" 24499486b8eSJosh Triplett 245ed794057SAnitha Chrisanthussource "drivers/gpu/drm/kmb/Kconfig" 246ed794057SAnitha Chrisanthus 247502e95c6SZach Reiznerconfig DRM_VGEM 248502e95c6SZach Reizner tristate "Virtual GEM provider" 24945d9c8ddSDaniel Vetter depends on DRM && MMU 25045d9c8ddSDaniel Vetter select DRM_GEM_SHMEM_HELPER 251502e95c6SZach Reizner help 252502e95c6SZach Reizner Choose this option to get a virtual graphics memory manager, 253502e95c6SZach Reizner as used by Mesa's software renderer for enhanced performance. 254502e95c6SZach Reizner If M is selected the module will be called vgem. 255502e95c6SZach Reizner 2561c7c5fd9SHaneen Mohammedconfig DRM_VKMS 257c91b007eSRodrigo Siqueira tristate "Virtual KMS (EXPERIMENTAL)" 25845d9c8ddSDaniel Vetter depends on DRM && MMU 2595ba57babSArnd Bergmann select DRM_KMS_HELPER 260488c888aSDaniel Vetter select DRM_GEM_SHMEM_HELPER 261f2a4a13aSzhong jiang select CRC32 262c91b007eSRodrigo Siqueira default n 2631c7c5fd9SHaneen Mohammed help 264c91b007eSRodrigo Siqueira Virtual Kernel Mode-Setting (VKMS) is used for testing or for 265c91b007eSRodrigo Siqueira running GPU in a headless machines. Choose this option to get 266c91b007eSRodrigo Siqueira a VKMS. 267c91b007eSRodrigo Siqueira 2681c7c5fd9SHaneen Mohammed If M is selected the module will be called vkms. 269502e95c6SZach Reizner 2701c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig" 2715a7b74beSThomas Hellstrom 2722048e328SMark Yaosource "drivers/gpu/drm/rockchip/Kconfig" 2732048e328SMark Yao 2745a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig" 27591c75492SAlan Cox 27691c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig" 27791c75492SAlan Cox 2785320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig" 279312fec14SDave Airlie 280312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig" 281312fec14SDave Airlie 282414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig" 283f9aa76a8SDave Airlie 28496f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig" 28596f60e37SRussell King 2861a396789SBoris Brezillonsource "drivers/gpu/drm/atmel-hlcdc/Kconfig" 2871a396789SBoris Brezillon 2884bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig" 2894bf8e196SLaurent Pinchart 29051c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig" 291d8f4a9edSThierry Reding 2929026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig" 2939026e0d1SMaxime Ripard 2948bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig" 295ca18e142SDave Airlie 29616ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig" 297f64122c1SDave Airlie 298f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig" 299c8afe684SRob Clark 300dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig" 301dc5698e8SDave Airlie 302c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig" 303dee8268fSThierry Reding 304109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig" 305109eee2fSJianwei Wang 306dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig" 307aead40eaSThierry Reding 308b759012cSYannick Fertresource "drivers/gpu/drm/stm/Kconfig" 309b759012cSYannick Fertre 310aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig" 311f2cb3148SBenjamin Gaignard 312a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig" 313a33ee95fSThierry Reding 314f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig" 3154a488a7aSOded Gabbay 3166556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig" 317c8b75bcaSEric Anholt 31890b86fccSPaul Cercueilsource "drivers/gpu/drm/ingenic/Kconfig" 31990b86fccSPaul Cercueil 32057692c94SEric Anholtsource "drivers/gpu/drm/v3d/Kconfig" 32157692c94SEric Anholt 322c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig" 323a8c21a54SThe etnaviv authors 324a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig" 32551dacf20SCarlos Palminha 32623e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig" 327119f5173SCK Hu 328efeeaefeSPaul Kocialkowskisource "drivers/gpu/drm/logicvc/Kconfig" 329efeeaefeSPaul Kocialkowski 330119f5173SCK Husource "drivers/gpu/drm/mediatek/Kconfig" 331d92d9c3aSDavid Herrmann 33245d59d70SMarek Vasutsource "drivers/gpu/drm/mxsfb/Kconfig" 33345d59d70SMarek Vasut 334bbbe775eSNeil Armstrongsource "drivers/gpu/drm/meson/Kconfig" 335bbbe775eSNeil Armstrong 336043386a0SNoralf Trønnessource "drivers/gpu/drm/tiny/Kconfig" 337fa201ac2SNoralf Trønnes 338bed41005STom Cookseysource "drivers/gpu/drm/pl111/Kconfig" 339bed41005STom Cooksey 340179c02feSLinus Walleijsource "drivers/gpu/drm/tve200/Kconfig" 341179c02feSLinus Walleij 342c575b7eeSOleksandr Andrushchenkosource "drivers/gpu/drm/xen/Kconfig" 343c575b7eeSOleksandr Andrushchenko 344131abc56SHans de Goedesource "drivers/gpu/drm/vboxvideo/Kconfig" 345131abc56SHans de Goede 346a1d2a633SQiang Yusource "drivers/gpu/drm/lima/Kconfig" 347a1d2a633SQiang Yu 348f3ba9122SRob Herringsource "drivers/gpu/drm/panfrost/Kconfig" 349f3ba9122SRob Herring 3504f2a8f58SJoel Stanleysource "drivers/gpu/drm/aspeed/Kconfig" 3514f2a8f58SJoel Stanley 3525fc537bfSLinus Walleijsource "drivers/gpu/drm/mcde/Kconfig" 3535fc537bfSLinus Walleij 35432a1795fSJyri Sarhasource "drivers/gpu/drm/tidss/Kconfig" 35532a1795fSJyri Sarha 356d76271d2SHyun Kwonsource "drivers/gpu/drm/xlnx/Kconfig" 357d76271d2SHyun Kwon 35840e1a70bSNoralf Trønnessource "drivers/gpu/drm/gud/Kconfig" 35940e1a70bSNoralf Trønnes 360a61732e8SJavier Martinez Canillassource "drivers/gpu/drm/solomon/Kconfig" 361a61732e8SJavier Martinez Canillas 36243531eddSKevin Tangsource "drivers/gpu/drm/sprd/Kconfig" 36343531eddSKevin Tang 36476c56a5aSDeepak Rawatconfig DRM_HYPERV 36576c56a5aSDeepak Rawat tristate "DRM Support for Hyper-V synthetic video device" 36676c56a5aSDeepak Rawat depends on DRM && PCI && MMU && HYPERV 36776c56a5aSDeepak Rawat select DRM_KMS_HELPER 36876c56a5aSDeepak Rawat select DRM_GEM_SHMEM_HELPER 36976c56a5aSDeepak Rawat help 37076c56a5aSDeepak Rawat This is a KMS driver for Hyper-V synthetic video device. Choose this 37176c56a5aSDeepak Rawat option if you would like to enable drm driver for Hyper-V virtual 37276c56a5aSDeepak Rawat machine. Unselect Hyper-V framebuffer driver (CONFIG_FB_HYPERV) so 37376c56a5aSDeepak Rawat that DRM driver is used by default. 37476c56a5aSDeepak Rawat 37576c56a5aSDeepak Rawat If M is selected the module will be called hyperv_drm. 37676c56a5aSDeepak Rawat 377d92d9c3aSDavid Herrmann# Keep legacy drivers last 378d92d9c3aSDavid Herrmann 379d92d9c3aSDavid Herrmannmenuconfig DRM_LEGACY 380d92d9c3aSDavid Herrmann bool "Enable legacy drivers (DANGEROUS)" 3817e53c284SBenjamin Gaignard depends on DRM && MMU 382d92d9c3aSDavid Herrmann help 383d92d9c3aSDavid Herrmann Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous 384d92d9c3aSDavid Herrmann APIs to user-space, which can be used to circumvent access 385d92d9c3aSDavid Herrmann restrictions and other security measures. For backwards compatibility 386d92d9c3aSDavid Herrmann those drivers are still available, but their use is highly 387d92d9c3aSDavid Herrmann inadvisable and might harm your system. 388d92d9c3aSDavid Herrmann 389d92d9c3aSDavid Herrmann You are recommended to use the safe modeset-only drivers instead, and 390d92d9c3aSDavid Herrmann perform 3D emulation in user-space. 391d92d9c3aSDavid Herrmann 392d92d9c3aSDavid Herrmann Unless you have strong reasons to go rogue, say "N". 393d92d9c3aSDavid Herrmann 394d92d9c3aSDavid Herrmannif DRM_LEGACY 395d92d9c3aSDavid Herrmann 396d92d9c3aSDavid Herrmannconfig DRM_TDFX 397d92d9c3aSDavid Herrmann tristate "3dfx Banshee/Voodoo3+" 398d92d9c3aSDavid Herrmann depends on DRM && PCI 399d92d9c3aSDavid Herrmann help 400d92d9c3aSDavid Herrmann Choose this option if you have a 3dfx Banshee or Voodoo3 (or later), 401d92d9c3aSDavid Herrmann graphics card. If M is selected, the module will be called tdfx. 402d92d9c3aSDavid Herrmann 403d92d9c3aSDavid Herrmannconfig DRM_R128 404d92d9c3aSDavid Herrmann tristate "ATI Rage 128" 405d92d9c3aSDavid Herrmann depends on DRM && PCI 406d92d9c3aSDavid Herrmann select FW_LOADER 407d92d9c3aSDavid Herrmann help 408d92d9c3aSDavid Herrmann Choose this option if you have an ATI Rage 128 graphics card. If M 409d92d9c3aSDavid Herrmann is selected, the module will be called r128. AGP support for 410d92d9c3aSDavid Herrmann this card is strongly suggested (unless you have a PCI version). 411d92d9c3aSDavid Herrmann 412d92d9c3aSDavid Herrmannconfig DRM_I810 413d92d9c3aSDavid Herrmann tristate "Intel I810" 414f86cf719SSebastian Andrzej Siewior # !PREEMPTION because of missing ioctl locking 415dc25ace6SThomas Gleixner depends on DRM && AGP && AGP_INTEL && (!PREEMPTION || BROKEN) 416d92d9c3aSDavid Herrmann help 417d92d9c3aSDavid Herrmann Choose this option if you have an Intel I810 graphics card. If M is 418d92d9c3aSDavid Herrmann selected, the module will be called i810. AGP support is required 419d92d9c3aSDavid Herrmann for this driver to work. 420d92d9c3aSDavid Herrmann 421d92d9c3aSDavid Herrmannconfig DRM_MGA 422d92d9c3aSDavid Herrmann tristate "Matrox g200/g400" 423d92d9c3aSDavid Herrmann depends on DRM && PCI 424d92d9c3aSDavid Herrmann select FW_LOADER 425d92d9c3aSDavid Herrmann help 426d92d9c3aSDavid Herrmann Choose this option if you have a Matrox G200, G400 or G450 graphics 427d92d9c3aSDavid Herrmann card. If M is selected, the module will be called mga. AGP 428d92d9c3aSDavid Herrmann support is required for this driver to work. 429d92d9c3aSDavid Herrmann 430d92d9c3aSDavid Herrmannconfig DRM_SIS 431d92d9c3aSDavid Herrmann tristate "SiS video cards" 432d92d9c3aSDavid Herrmann depends on DRM && AGP 433d92d9c3aSDavid Herrmann depends on FB_SIS || FB_SIS=n 434d92d9c3aSDavid Herrmann help 435d92d9c3aSDavid Herrmann Choose this option if you have a SiS 630 or compatible video 436d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called sis. AGP 437d92d9c3aSDavid Herrmann support is required for this driver to work. 438d92d9c3aSDavid Herrmann 439d92d9c3aSDavid Herrmannconfig DRM_VIA 440d92d9c3aSDavid Herrmann tristate "Via unichrome video cards" 441d92d9c3aSDavid Herrmann depends on DRM && PCI 442d92d9c3aSDavid Herrmann help 443d92d9c3aSDavid Herrmann Choose this option if you have a Via unichrome or compatible video 444d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called via. 445d92d9c3aSDavid Herrmann 446d92d9c3aSDavid Herrmannconfig DRM_SAVAGE 447d92d9c3aSDavid Herrmann tristate "Savage video cards" 448d92d9c3aSDavid Herrmann depends on DRM && PCI 449d92d9c3aSDavid Herrmann help 450d92d9c3aSDavid Herrmann Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister 451d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called savage. 452d92d9c3aSDavid Herrmann 453d92d9c3aSDavid Herrmannendif # DRM_LEGACY 454a33d42ddSChris Wilson 4559b6c80beSRandy Dunlapconfig DRM_EXPORT_FOR_TESTS 4569b6c80beSRandy Dunlap bool 4579b6c80beSRandy Dunlap 458341a0ffcSHans de Goede# Separate option because drm_panel_orientation_quirks.c is shared with fbdev 459341a0ffcSHans de Goedeconfig DRM_PANEL_ORIENTATION_QUIRKS 460341a0ffcSHans de Goede tristate 461341a0ffcSHans de Goede 462a33d42ddSChris Wilsonconfig DRM_LIB_RANDOM 463a33d42ddSChris Wilson bool 464a33d42ddSChris Wilson default n 465a1a98689SHans de Goede 466a1a98689SHans de Goedeconfig DRM_PRIVACY_SCREEN 467a1a98689SHans de Goede bool 468a1a98689SHans de Goede default n 469