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 11e9aeeba2SJavier Martinez Canillas select DRM_NOMODESET 128d70f395SHans de Goede select DRM_PANEL_ORIENTATION_QUIRKS 1310a85120SThierry Reding select HDMI 14eaf99c74SChris Wilson select FB_CMDLINE 1557a6297eSDave Airlie select I2C 1657a6297eSDave Airlie select I2C_ALGOBIT 173248877eSDave Airlie select DMA_SHARED_BUFFER 1896260142SGustavo Padovan select SYNC_FILE 19bfe3911aSChris Wilson# gallium uses SYS_kcmp for os_same_file_description() to de-duplicate 20bfe3911aSChris Wilson# device and dmabuf fd. Let's make sure that is available for our userspace. 21bfe3911aSChris Wilson select KCMP 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 34174102f4SNoralf Trønnes 35068a0023SAndrzej Hajdaconfig DRM_MIPI_DSI 36068a0023SAndrzej Hajda bool 37068a0023SAndrzej Hajda depends on DRM 38068a0023SAndrzej Hajda 395705670dSChris Wilsonconfig DRM_DEBUG_MM 405705670dSChris Wilson bool "Insert extra checks and debug info into the DRM range managers" 415705670dSChris Wilson default n 42cd456f8dSChris Wilson depends on DRM=y 434b514e10SChris Wilson depends on STACKTRACE_SUPPORT 445705670dSChris Wilson select STACKDEPOT 455705670dSChris Wilson help 465705670dSChris Wilson Enable allocation tracking of memory manager and leak detection on 475705670dSChris Wilson shutdown. 485705670dSChris Wilson 495705670dSChris Wilson Recommended for driver developers only. 505705670dSChris Wilson 515705670dSChris Wilson If in doubt, say "N". 525705670dSChris Wilson 5334b13e5eSMaarten Lankhorstconfig DRM_DEBUG_SELFTEST 5434b13e5eSMaarten Lankhorst tristate "kselftests for DRM" 5550f0033dSChris Wilson depends on DRM 5650f0033dSChris Wilson depends on DEBUG_KERNEL 5750f0033dSChris Wilson select PRIME_NUMBERS 581e0f6642SThomas Zimmermann select DRM_DISPLAY_DP_HELPER 591e0f6642SThomas Zimmermann select DRM_DISPLAY_HELPER 6050f0033dSChris Wilson select DRM_LIB_RANDOM 617420e049SMaarten Lankhorst select DRM_KMS_HELPER 623d515ba9SArunpravin select DRM_BUDDY 636349120dSChris Wilson select DRM_EXPORT_FOR_TESTS if m 6450f0033dSChris Wilson default n 6550f0033dSChris Wilson help 6634b13e5eSMaarten Lankhorst This option provides kernel modules that can be used to run 6734b13e5eSMaarten Lankhorst various selftests on parts of the DRM api. This option is not 6850f0033dSChris Wilson useful for distributions or general kernels, but only for kernel 6950f0033dSChris Wilson developers working on DRM and associated drivers. 7050f0033dSChris Wilson 7150f0033dSChris Wilson If in doubt, say "N". 7250f0033dSChris Wilson 736fcefd56SDave Airlieconfig DRM_KMS_HELPER 7413a8195bSDave Airlie tristate 7513a8195bSDave Airlie depends on DRM 7692b6f89fSDaniel Vetter help 7792b6f89fSDaniel Vetter CRTC helpers for KMS drivers. 7892b6f89fSDaniel Vetter 7912a280c7SLyude Paulconfig DRM_DEBUG_DP_MST_TOPOLOGY_REFS 8012a280c7SLyude Paul bool "Enable refcount backtrace history in the DP MST helpers" 81d6d07ca1SGuenter Roeck depends on STACKTRACE_SUPPORT 8212a280c7SLyude Paul select STACKDEPOT 8312a280c7SLyude Paul depends on DRM_KMS_HELPER 8412a280c7SLyude Paul depends on DEBUG_KERNEL 8512a280c7SLyude Paul depends on EXPERT 8612a280c7SLyude Paul help 8712a280c7SLyude Paul Enables debug tracing for topology refs in DRM's DP MST helpers. A 8812a280c7SLyude Paul history of each topology reference/dereference will be printed to the 8912a280c7SLyude Paul kernel log once a port or branch device's topology refcount reaches 0. 9012a280c7SLyude Paul 9112a280c7SLyude Paul This has the potential to use a lot of memory and print some very 9212a280c7SLyude Paul large kernel messages. If in doubt, say "N". 9312a280c7SLyude Paul 94cd06ab2fSJani Nikulaconfig DRM_DEBUG_MODESET_LOCK 95cd06ab2fSJani Nikula bool "Enable backtrace history for lock contention" 96cd06ab2fSJani Nikula depends on STACKTRACE_SUPPORT 97cd06ab2fSJani Nikula depends on DEBUG_KERNEL 98cd06ab2fSJani Nikula depends on EXPERT 99cd06ab2fSJani Nikula select STACKDEPOT 100cd06ab2fSJani Nikula default y if DEBUG_WW_MUTEX_SLOWPATH 101cd06ab2fSJani Nikula help 102cd06ab2fSJani Nikula Enable debug tracing of failures to gracefully handle drm modeset lock 103cd06ab2fSJani Nikula contention. A history of each drm modeset lock path hitting -EDEADLK 104cd06ab2fSJani Nikula will be saved until gracefully handled, and the backtrace will be 105cd06ab2fSJani Nikula printed when attempting to lock a contended lock. 106cd06ab2fSJani Nikula 107cd06ab2fSJani Nikula If in doubt, say "N". 108cd06ab2fSJani Nikula 109a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION 110a03fdcb1SArchit Taneja bool "Enable legacy fbdev support for your modesetting driver" 1119d6366e7SArnd Bergmann depends on DRM_KMS_HELPER 1129d6366e7SArnd Bergmann depends on FB=y || FB=DRM_KMS_HELPER 11391185d55SThomas Zimmermann select FB_CFB_FILLRECT 11491185d55SThomas Zimmermann select FB_CFB_COPYAREA 11591185d55SThomas Zimmermann select FB_CFB_IMAGEBLIT 11691185d55SThomas Zimmermann select FB_DEFERRED_IO 11791185d55SThomas Zimmermann select FB_SYS_FOPS 11891185d55SThomas Zimmermann select FB_SYS_FILLRECT 11991185d55SThomas Zimmermann select FB_SYS_COPYAREA 12091185d55SThomas Zimmermann select FB_SYS_IMAGEBLIT 12191185d55SThomas Zimmermann select FRAMEBUFFER_CONSOLE if !EXPERT 12291185d55SThomas Zimmermann select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE 123a03fdcb1SArchit Taneja default y 124a03fdcb1SArchit Taneja help 125a03fdcb1SArchit Taneja Choose this option if you have a need for the legacy fbdev 126a03fdcb1SArchit Taneja support. Note that this support also provides the linux console 127a03fdcb1SArchit Taneja support on top of your modesetting driver. 128a03fdcb1SArchit Taneja 129a03fdcb1SArchit Taneja If in doubt, say "Y". 130a03fdcb1SArchit Taneja 1315f152576SXinliang Liuconfig DRM_FBDEV_OVERALLOC 1325f152576SXinliang Liu int "Overallocation of the fbdev buffer" 1335f152576SXinliang Liu depends on DRM_FBDEV_EMULATION 1345f152576SXinliang Liu default 100 1355f152576SXinliang Liu help 1365f152576SXinliang Liu Defines the fbdev buffer overallocation in percent. Default 1375f152576SXinliang Liu is 100. Typical values for double buffering will be 200, 1385f152576SXinliang Liu triple buffering 300. 1395f152576SXinliang Liu 1404be9bd10SNeil Armstrongconfig DRM_FBDEV_LEAK_PHYS_SMEM 1414be9bd10SNeil Armstrong bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)" 1424be9bd10SNeil Armstrong depends on DRM_FBDEV_EMULATION && EXPERT 1434be9bd10SNeil Armstrong default n 1444be9bd10SNeil Armstrong help 1454be9bd10SNeil Armstrong In order to keep user-space compatibility, we want in certain 1464be9bd10SNeil Armstrong use-cases to keep leaking the fbdev physical address to the 1474be9bd10SNeil Armstrong user-space program handling the fbdev buffer. 1484be9bd10SNeil Armstrong This affects, not only, Amlogic, Allwinner or Rockchip devices 1494be9bd10SNeil Armstrong with ARM Mali GPUs using an userspace Blob. 1504be9bd10SNeil Armstrong This option is not supported by upstream developers and should be 1514be9bd10SNeil Armstrong removed as soon as possible and be considered as a broken and 1524be9bd10SNeil Armstrong legacy behaviour from a modern fbdev device driver. 1534be9bd10SNeil Armstrong 1544be9bd10SNeil Armstrong Please send any bug reports when using this to your proprietary 1554be9bd10SNeil Armstrong software vendor that requires this. 1564be9bd10SNeil Armstrong 1574be9bd10SNeil Armstrong If in doubt, say "N" or spread the word to your closed source 1584be9bd10SNeil Armstrong library vendor. 1594be9bd10SNeil Armstrong 160da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE 161da0df92bSCarsten Emde bool "Allow to specify an EDID data set instead of probing for it" 16253fd40a9SJani Nikula depends on DRM 163da0df92bSCarsten Emde help 164da0df92bSCarsten Emde Say Y here, if you want to use EDID data to be loaded from the 165da0df92bSCarsten Emde /lib/firmware directory or one of the provided built-in 166da0df92bSCarsten Emde data sets. This may be necessary, if the graphics adapter or 167da0df92bSCarsten Emde monitor are unable to provide appropriate EDID data. Since this 168da0df92bSCarsten Emde feature is provided as a workaround for broken hardware, the 169da0df92bSCarsten Emde default case is N. Details and instructions how to build your own 17072ef5e52SMauro Carvalho Chehab EDID data are given in Documentation/admin-guide/edid.rst. 171da0df92bSCarsten Emde 1721e0f6642SThomas Zimmermannsource "drivers/gpu/drm/display/Kconfig" 1732c6d1fffSHans Verkuil 174ba4e7d97SThomas Hellstromconfig DRM_TTM 175771fe6b9SJerome Glisse tristate 17662a0d98aSBenjamin Gaignard depends on DRM && MMU 177ba4e7d97SThomas Hellstrom help 178ba4e7d97SThomas Hellstrom GPU memory management subsystem for devices with multiple 179ba4e7d97SThomas Hellstrom GPU memory types. Will be enabled automatically if a device driver 180ba4e7d97SThomas Hellstrom uses it. 181ba4e7d97SThomas Hellstrom 1826387a3c4SArunpravinconfig DRM_BUDDY 1836387a3c4SArunpravin tristate 1846387a3c4SArunpravin depends on DRM 1856387a3c4SArunpravin help 1866387a3c4SArunpravin A page based buddy allocator 1876387a3c4SArunpravin 18885438a8dSThomas Zimmermannconfig DRM_VRAM_HELPER 18985438a8dSThomas Zimmermann tristate 19085438a8dSThomas Zimmermann depends on DRM 19185438a8dSThomas Zimmermann help 19285438a8dSThomas Zimmermann Helpers for VRAM memory management 19385438a8dSThomas Zimmermann 194ff540b76SGerd Hoffmannconfig DRM_TTM_HELPER 195ff540b76SGerd Hoffmann tristate 196ff540b76SGerd Hoffmann depends on DRM 197ff540b76SGerd Hoffmann select DRM_TTM 198ff540b76SGerd Hoffmann help 199ff540b76SGerd Hoffmann Helpers for ttm-based gem objects 200ff540b76SGerd Hoffmann 201b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER 2024b2b5e14SThomas Zimmermann tristate 203e1c7e324SChristoph Hellwig depends on DRM 204b9d47450SSascha Hauer help 205b9d47450SSascha Hauer Choose this if you need the GEM CMA helper functions 206b9d47450SSascha Hauer 2072194a63aSNoralf Trønnesconfig DRM_GEM_SHMEM_HELPER 2084b2b5e14SThomas Zimmermann tristate 2098b93d1d7SDaniel Vetter depends on DRM && MMU 2102194a63aSNoralf Trønnes help 2112194a63aSNoralf Trønnes Choose this if you need the GEM shmem helper functions 2122194a63aSNoralf Trønnes 2131b1f42d8SLucas Stachconfig DRM_SCHED 2141b1f42d8SLucas Stach tristate 2151b1f42d8SLucas Stach depends on DRM 2161b1f42d8SLucas Stach 2176504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig" 2186504d0d9SRob Clark 2198e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig" 2208e22d792SLiviu Dudau 221c0e09200SDave Airlieconfig DRM_RADEON 222c0e09200SDave Airlie tristate "ATI Radeon" 223011cda58SBenjamin Gaignard depends on DRM && PCI && MMU 224cba2afb6SChristian König depends on AGP || !AGP 22570967ab9SBen Hutchings select FW_LOADER 2261e0f6642SThomas Zimmermann select DRM_DISPLAY_DP_HELPER 2271e0f6642SThomas Zimmermann select DRM_DISPLAY_HELPER 228a0cdc649SDave Airlie select DRM_KMS_HELPER 229a0cdc649SDave Airlie select DRM_TTM 23049a3f51dSThomas Zimmermann select DRM_TTM_HELPER 2315d9b7e2dSDave Airlie select POWER_SUPPLY 23221a8122aSAlex Deucher select HWMON 23314adc892SChristian König select BACKLIGHT_CLASS_DEVICE 2340aea5e4aSAlex Deucher select INTERVAL_TREE 235c0e09200SDave Airlie help 236c0e09200SDave Airlie Choose this option if you have an ATI Radeon graphics card. There 237c0e09200SDave Airlie are both PCI and AGP versions. You don't need to choose this to 238c0e09200SDave Airlie run the Radeon in plain VGA mode. 239c0e09200SDave Airlie 240c0e09200SDave Airlie If M is selected, the module will be called radeon. 241c0e09200SDave Airlie 242f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig" 243f71d0187SDave Airlie 244d38ceaf9SAlex Deucherconfig DRM_AMDGPU 245d38ceaf9SAlex Deucher tristate "AMD GPU" 246011cda58SBenjamin Gaignard depends on DRM && PCI && MMU 247d38ceaf9SAlex Deucher select FW_LOADER 2481e0f6642SThomas Zimmermann select DRM_DISPLAY_DP_HELPER 2494fc8cb47SThomas Zimmermann select DRM_DISPLAY_HDMI_HELPER 2501e0f6642SThomas Zimmermann select DRM_DISPLAY_HELPER 251d38ceaf9SAlex Deucher select DRM_KMS_HELPER 2521b1f42d8SLucas Stach select DRM_SCHED 253d38ceaf9SAlex Deucher select DRM_TTM 25449a3f51dSThomas Zimmermann select DRM_TTM_HELPER 255d38ceaf9SAlex Deucher select POWER_SUPPLY 256d38ceaf9SAlex Deucher select HWMON 257d38ceaf9SAlex Deucher select BACKLIGHT_CLASS_DEVICE 258d38ceaf9SAlex Deucher select INTERVAL_TREE 259c9cad937SArunpravin Paneer Selvam select DRM_BUDDY 260d38ceaf9SAlex Deucher help 261d38ceaf9SAlex Deucher Choose this option if you have a recent AMD Radeon graphics card. 262d38ceaf9SAlex Deucher 263d38ceaf9SAlex Deucher If M is selected, the module will be called amdgpu. 264d38ceaf9SAlex Deucher 265d38ceaf9SAlex Deuchersource "drivers/gpu/drm/amd/amdgpu/Kconfig" 266a8fe58ceSMaruthi Bayyavarapu 267f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig" 268f3c93cbdSBen Skeggs 2694520f53aSDaniel Vettersource "drivers/gpu/drm/i915/Kconfig" 27099486b8eSJosh Triplett 271ed794057SAnitha Chrisanthussource "drivers/gpu/drm/kmb/Kconfig" 272ed794057SAnitha Chrisanthus 273502e95c6SZach Reiznerconfig DRM_VGEM 274502e95c6SZach Reizner tristate "Virtual GEM provider" 27545d9c8ddSDaniel Vetter depends on DRM && MMU 27645d9c8ddSDaniel Vetter select DRM_GEM_SHMEM_HELPER 277502e95c6SZach Reizner help 278502e95c6SZach Reizner Choose this option to get a virtual graphics memory manager, 279502e95c6SZach Reizner as used by Mesa's software renderer for enhanced performance. 280502e95c6SZach Reizner If M is selected the module will be called vgem. 281502e95c6SZach Reizner 2821c7c5fd9SHaneen Mohammedconfig DRM_VKMS 283c91b007eSRodrigo Siqueira tristate "Virtual KMS (EXPERIMENTAL)" 28445d9c8ddSDaniel Vetter depends on DRM && MMU 2855ba57babSArnd Bergmann select DRM_KMS_HELPER 286488c888aSDaniel Vetter select DRM_GEM_SHMEM_HELPER 287f2a4a13aSzhong jiang select CRC32 288c91b007eSRodrigo Siqueira default n 2891c7c5fd9SHaneen Mohammed help 290c91b007eSRodrigo Siqueira Virtual Kernel Mode-Setting (VKMS) is used for testing or for 291c91b007eSRodrigo Siqueira running GPU in a headless machines. Choose this option to get 292c91b007eSRodrigo Siqueira a VKMS. 293c91b007eSRodrigo Siqueira 2941c7c5fd9SHaneen Mohammed If M is selected the module will be called vkms. 295502e95c6SZach Reizner 2961c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig" 2975a7b74beSThomas Hellstrom 2982048e328SMark Yaosource "drivers/gpu/drm/rockchip/Kconfig" 2992048e328SMark Yao 3005a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig" 30191c75492SAlan Cox 30291c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig" 30391c75492SAlan Cox 3045320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig" 305312fec14SDave Airlie 306312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig" 307312fec14SDave Airlie 308414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig" 309f9aa76a8SDave Airlie 31096f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig" 31196f60e37SRussell King 3121a396789SBoris Brezillonsource "drivers/gpu/drm/atmel-hlcdc/Kconfig" 3131a396789SBoris Brezillon 3144bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig" 3154bf8e196SLaurent Pinchart 31651c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig" 317d8f4a9edSThierry Reding 3189026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig" 3199026e0d1SMaxime Ripard 3208bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig" 321ca18e142SDave Airlie 32216ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig" 323f64122c1SDave Airlie 324f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig" 325c8afe684SRob Clark 326dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig" 327dc5698e8SDave Airlie 328c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig" 329dee8268fSThierry Reding 330109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig" 331109eee2fSJianwei Wang 332dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig" 333aead40eaSThierry Reding 334b759012cSYannick Fertresource "drivers/gpu/drm/stm/Kconfig" 335b759012cSYannick Fertre 336aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig" 337f2cb3148SBenjamin Gaignard 338a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig" 339a33ee95fSThierry Reding 340f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig" 3414a488a7aSOded Gabbay 3426556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig" 343c8b75bcaSEric Anholt 34490b86fccSPaul Cercueilsource "drivers/gpu/drm/ingenic/Kconfig" 34590b86fccSPaul Cercueil 34657692c94SEric Anholtsource "drivers/gpu/drm/v3d/Kconfig" 34757692c94SEric Anholt 348c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig" 349a8c21a54SThe etnaviv authors 350a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig" 35151dacf20SCarlos Palminha 35223e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig" 353119f5173SCK Hu 354*efeeaefeSPaul Kocialkowskisource "drivers/gpu/drm/logicvc/Kconfig" 355*efeeaefeSPaul Kocialkowski 356119f5173SCK Husource "drivers/gpu/drm/mediatek/Kconfig" 357d92d9c3aSDavid Herrmann 35845d59d70SMarek Vasutsource "drivers/gpu/drm/mxsfb/Kconfig" 35945d59d70SMarek Vasut 360bbbe775eSNeil Armstrongsource "drivers/gpu/drm/meson/Kconfig" 361bbbe775eSNeil Armstrong 362043386a0SNoralf Trønnessource "drivers/gpu/drm/tiny/Kconfig" 363fa201ac2SNoralf Trønnes 364bed41005STom Cookseysource "drivers/gpu/drm/pl111/Kconfig" 365bed41005STom Cooksey 366179c02feSLinus Walleijsource "drivers/gpu/drm/tve200/Kconfig" 367179c02feSLinus Walleij 368c575b7eeSOleksandr Andrushchenkosource "drivers/gpu/drm/xen/Kconfig" 369c575b7eeSOleksandr Andrushchenko 370131abc56SHans de Goedesource "drivers/gpu/drm/vboxvideo/Kconfig" 371131abc56SHans de Goede 372a1d2a633SQiang Yusource "drivers/gpu/drm/lima/Kconfig" 373a1d2a633SQiang Yu 374f3ba9122SRob Herringsource "drivers/gpu/drm/panfrost/Kconfig" 375f3ba9122SRob Herring 3764f2a8f58SJoel Stanleysource "drivers/gpu/drm/aspeed/Kconfig" 3774f2a8f58SJoel Stanley 3785fc537bfSLinus Walleijsource "drivers/gpu/drm/mcde/Kconfig" 3795fc537bfSLinus Walleij 38032a1795fSJyri Sarhasource "drivers/gpu/drm/tidss/Kconfig" 38132a1795fSJyri Sarha 382d76271d2SHyun Kwonsource "drivers/gpu/drm/xlnx/Kconfig" 383d76271d2SHyun Kwon 38440e1a70bSNoralf Trønnessource "drivers/gpu/drm/gud/Kconfig" 38540e1a70bSNoralf Trønnes 386a61732e8SJavier Martinez Canillassource "drivers/gpu/drm/solomon/Kconfig" 387a61732e8SJavier Martinez Canillas 38843531eddSKevin Tangsource "drivers/gpu/drm/sprd/Kconfig" 38943531eddSKevin Tang 39076c56a5aSDeepak Rawatconfig DRM_HYPERV 39176c56a5aSDeepak Rawat tristate "DRM Support for Hyper-V synthetic video device" 39276c56a5aSDeepak Rawat depends on DRM && PCI && MMU && HYPERV 39376c56a5aSDeepak Rawat select DRM_KMS_HELPER 39476c56a5aSDeepak Rawat select DRM_GEM_SHMEM_HELPER 39576c56a5aSDeepak Rawat help 39676c56a5aSDeepak Rawat This is a KMS driver for Hyper-V synthetic video device. Choose this 39776c56a5aSDeepak Rawat option if you would like to enable drm driver for Hyper-V virtual 39876c56a5aSDeepak Rawat machine. Unselect Hyper-V framebuffer driver (CONFIG_FB_HYPERV) so 39976c56a5aSDeepak Rawat that DRM driver is used by default. 40076c56a5aSDeepak Rawat 40176c56a5aSDeepak Rawat If M is selected the module will be called hyperv_drm. 40276c56a5aSDeepak Rawat 403d92d9c3aSDavid Herrmann# Keep legacy drivers last 404d92d9c3aSDavid Herrmann 405d92d9c3aSDavid Herrmannmenuconfig DRM_LEGACY 406d92d9c3aSDavid Herrmann bool "Enable legacy drivers (DANGEROUS)" 4077e53c284SBenjamin Gaignard depends on DRM && MMU 408d92d9c3aSDavid Herrmann help 409d92d9c3aSDavid Herrmann Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous 410d92d9c3aSDavid Herrmann APIs to user-space, which can be used to circumvent access 411d92d9c3aSDavid Herrmann restrictions and other security measures. For backwards compatibility 412d92d9c3aSDavid Herrmann those drivers are still available, but their use is highly 413d92d9c3aSDavid Herrmann inadvisable and might harm your system. 414d92d9c3aSDavid Herrmann 415d92d9c3aSDavid Herrmann You are recommended to use the safe modeset-only drivers instead, and 416d92d9c3aSDavid Herrmann perform 3D emulation in user-space. 417d92d9c3aSDavid Herrmann 418d92d9c3aSDavid Herrmann Unless you have strong reasons to go rogue, say "N". 419d92d9c3aSDavid Herrmann 420d92d9c3aSDavid Herrmannif DRM_LEGACY 421d92d9c3aSDavid Herrmann 422d92d9c3aSDavid Herrmannconfig DRM_TDFX 423d92d9c3aSDavid Herrmann tristate "3dfx Banshee/Voodoo3+" 424d92d9c3aSDavid Herrmann depends on DRM && PCI 425d92d9c3aSDavid Herrmann help 426d92d9c3aSDavid Herrmann Choose this option if you have a 3dfx Banshee or Voodoo3 (or later), 427d92d9c3aSDavid Herrmann graphics card. If M is selected, the module will be called tdfx. 428d92d9c3aSDavid Herrmann 429d92d9c3aSDavid Herrmannconfig DRM_R128 430d92d9c3aSDavid Herrmann tristate "ATI Rage 128" 431d92d9c3aSDavid Herrmann depends on DRM && PCI 432d92d9c3aSDavid Herrmann select FW_LOADER 433d92d9c3aSDavid Herrmann help 434d92d9c3aSDavid Herrmann Choose this option if you have an ATI Rage 128 graphics card. If M 435d92d9c3aSDavid Herrmann is selected, the module will be called r128. AGP support for 436d92d9c3aSDavid Herrmann this card is strongly suggested (unless you have a PCI version). 437d92d9c3aSDavid Herrmann 438d92d9c3aSDavid Herrmannconfig DRM_I810 439d92d9c3aSDavid Herrmann tristate "Intel I810" 440f86cf719SSebastian Andrzej Siewior # !PREEMPTION because of missing ioctl locking 441dc25ace6SThomas Gleixner depends on DRM && AGP && AGP_INTEL && (!PREEMPTION || BROKEN) 442d92d9c3aSDavid Herrmann help 443d92d9c3aSDavid Herrmann Choose this option if you have an Intel I810 graphics card. If M is 444d92d9c3aSDavid Herrmann selected, the module will be called i810. AGP support is required 445d92d9c3aSDavid Herrmann for this driver to work. 446d92d9c3aSDavid Herrmann 447d92d9c3aSDavid Herrmannconfig DRM_MGA 448d92d9c3aSDavid Herrmann tristate "Matrox g200/g400" 449d92d9c3aSDavid Herrmann depends on DRM && PCI 450d92d9c3aSDavid Herrmann select FW_LOADER 451d92d9c3aSDavid Herrmann help 452d92d9c3aSDavid Herrmann Choose this option if you have a Matrox G200, G400 or G450 graphics 453d92d9c3aSDavid Herrmann card. If M is selected, the module will be called mga. AGP 454d92d9c3aSDavid Herrmann support is required for this driver to work. 455d92d9c3aSDavid Herrmann 456d92d9c3aSDavid Herrmannconfig DRM_SIS 457d92d9c3aSDavid Herrmann tristate "SiS video cards" 458d92d9c3aSDavid Herrmann depends on DRM && AGP 459d92d9c3aSDavid Herrmann depends on FB_SIS || FB_SIS=n 460d92d9c3aSDavid Herrmann help 461d92d9c3aSDavid Herrmann Choose this option if you have a SiS 630 or compatible video 462d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called sis. AGP 463d92d9c3aSDavid Herrmann support is required for this driver to work. 464d92d9c3aSDavid Herrmann 465d92d9c3aSDavid Herrmannconfig DRM_VIA 466d92d9c3aSDavid Herrmann tristate "Via unichrome video cards" 467d92d9c3aSDavid Herrmann depends on DRM && PCI 468d92d9c3aSDavid Herrmann help 469d92d9c3aSDavid Herrmann Choose this option if you have a Via unichrome or compatible video 470d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called via. 471d92d9c3aSDavid Herrmann 472d92d9c3aSDavid Herrmannconfig DRM_SAVAGE 473d92d9c3aSDavid Herrmann tristate "Savage video cards" 474d92d9c3aSDavid Herrmann depends on DRM && PCI 475d92d9c3aSDavid Herrmann help 476d92d9c3aSDavid Herrmann Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister 477d92d9c3aSDavid Herrmann chipset. If M is selected the module will be called savage. 478d92d9c3aSDavid Herrmann 479d92d9c3aSDavid Herrmannendif # DRM_LEGACY 480a33d42ddSChris Wilson 4819b6c80beSRandy Dunlapconfig DRM_EXPORT_FOR_TESTS 4829b6c80beSRandy Dunlap bool 4839b6c80beSRandy Dunlap 484341a0ffcSHans de Goede# Separate option because drm_panel_orientation_quirks.c is shared with fbdev 485341a0ffcSHans de Goedeconfig DRM_PANEL_ORIENTATION_QUIRKS 486341a0ffcSHans de Goede tristate 487341a0ffcSHans de Goede 488e9aeeba2SJavier Martinez Canillas# Separate option because nomodeset parameter is global and expected built-in 489e9aeeba2SJavier Martinez Canillasconfig DRM_NOMODESET 490e9aeeba2SJavier Martinez Canillas bool 491e9aeeba2SJavier Martinez Canillas default n 492e9aeeba2SJavier Martinez Canillas 493a33d42ddSChris Wilsonconfig DRM_LIB_RANDOM 494a33d42ddSChris Wilson bool 495a33d42ddSChris Wilson default n 496a1a98689SHans de Goede 497a1a98689SHans de Goedeconfig DRM_PRIVACY_SCREEN 498a1a98689SHans de Goede bool 499a1a98689SHans de Goede default n 500