xref: /linux/drivers/gpu/drm/Kconfig (revision ff065eaf5502384c0d0a3bd3a9459eb5eb0811e1)
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
12c242f484SJavier Martinez Canillas	select DRM_KMS_HELPER if DRM_FBDEV_EMULATION
13c242f484SJavier Martinez Canillas	select FB_CORE if DRM_FBDEV_EMULATION
14cd8a064fSThomas Zimmermann	select FB_SYSMEM_HELPERS_DEFERRED if DRM_FBDEV_EMULATION
1510a85120SThierry Reding	select HDMI
1657a6297eSDave Airlie	select I2C
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
2293604a5aSThomas Zimmermann	select VIDEO_CMDLINE
239a758d87SThomas Zimmermann	select VIDEO_NOMODESET
24c0e09200SDave Airlie	help
25c0e09200SDave Airlie	  Kernel-level support for the Direct Rendering Infrastructure (DRI)
26c0e09200SDave Airlie	  introduced in XFree86 4.0. If you say Y here, you need to select
27c0e09200SDave Airlie	  the module that's right for your graphics card from the list below.
28c0e09200SDave Airlie	  These modules provide support for synchronization, security, and
29c0e09200SDave Airlie	  DMA transfers. Please see <http://dri.sourceforge.net/> for more
30c0e09200SDave Airlie	  details.  You should also select and configure AGP
31dcdb1674SJordan Crouse	  (/dev/agpgart) support if it is available for your platform.
32c0e09200SDave Airlie
33174102f4SNoralf Trønnesconfig DRM_MIPI_DBI
34174102f4SNoralf Trønnes	tristate
35174102f4SNoralf Trønnes	depends on DRM
36eb7de496SRandy Dunlap	select DRM_KMS_HELPER
37174102f4SNoralf Trønnes
38068a0023SAndrzej Hajdaconfig DRM_MIPI_DSI
39068a0023SAndrzej Hajda	bool
40068a0023SAndrzej Hajda	depends on DRM
41068a0023SAndrzej Hajda
425705670dSChris Wilsonconfig DRM_DEBUG_MM
435705670dSChris Wilson	bool "Insert extra checks and debug info into the DRM range managers"
445705670dSChris Wilson	default n
45cd456f8dSChris Wilson	depends on DRM=y
464b514e10SChris Wilson	depends on STACKTRACE_SUPPORT
475705670dSChris Wilson	select STACKDEPOT
485705670dSChris Wilson	help
495705670dSChris Wilson	  Enable allocation tracking of memory manager and leak detection on
505705670dSChris Wilson	  shutdown.
515705670dSChris Wilson
525705670dSChris Wilson	  Recommended for driver developers only.
535705670dSChris Wilson
545705670dSChris Wilson	  If in doubt, say "N".
555705670dSChris Wilson
5684ec6728SJim Cromieconfig DRM_USE_DYNAMIC_DEBUG
5784ec6728SJim Cromie	bool "use dynamic debug to implement drm.debug"
58bb2ff6c2SVille Syrjälä	default n
59bb2ff6c2SVille Syrjälä	depends on BROKEN
6084ec6728SJim Cromie	depends on DRM
6184ec6728SJim Cromie	depends on DYNAMIC_DEBUG || DYNAMIC_DEBUG_CORE
6284ec6728SJim Cromie	depends on JUMP_LABEL
6384ec6728SJim Cromie	help
6484ec6728SJim Cromie	  Use dynamic-debug to avoid drm_debug_enabled() runtime overheads.
6584ec6728SJim Cromie	  Due to callsite counts in DRM drivers (~4k in amdgpu) and 56
6684ec6728SJim Cromie	  bytes per callsite, the .data costs can be substantial, and
6784ec6728SJim Cromie	  are therefore configurable.
6884ec6728SJim Cromie
69b85be042SMaxime Ripardconfig DRM_KUNIT_TEST_HELPERS
70b85be042SMaxime Ripard	tristate
71b85be042SMaxime Ripard	depends on DRM && KUNIT
72b85be042SMaxime Ripard	help
73b85be042SMaxime Ripard	  KUnit Helpers for KMS drivers.
74b85be042SMaxime Ripard
758f456104SJosé Expósitoconfig DRM_KUNIT_TEST
768f456104SJosé Expósito	tristate "KUnit tests for DRM" if !KUNIT_ALL_TESTS
77ba8f16cdSMaíra Canal	depends on DRM && KUNIT
78ba8f16cdSMaíra Canal	select PRIME_NUMBERS
79ba8f16cdSMaíra Canal	select DRM_DISPLAY_DP_HELPER
80ba8f16cdSMaíra Canal	select DRM_DISPLAY_HELPER
81ba8f16cdSMaíra Canal	select DRM_LIB_RANDOM
828f456104SJosé Expósito	select DRM_KMS_HELPER
83ba8f16cdSMaíra Canal	select DRM_BUDDY
84ba8f16cdSMaíra Canal	select DRM_EXPORT_FOR_TESTS if m
85b85be042SMaxime Ripard	select DRM_KUNIT_TEST_HELPERS
869710631cSChristian König	select DRM_EXEC
878f456104SJosé Expósito	default KUNIT_ALL_TESTS
888f456104SJosé Expósito	help
898f456104SJosé Expósito	  This builds unit tests for DRM. This option is not useful for
908f456104SJosé Expósito	  distributions or general kernels, but only for kernel
918f456104SJosé Expósito	  developers working on DRM and associated drivers.
928f456104SJosé Expósito
938f456104SJosé Expósito	  For more information on KUnit and unit tests in general,
948f456104SJosé Expósito	  please refer to the KUnit documentation in
958f456104SJosé Expósito	  Documentation/dev-tools/kunit/.
968f456104SJosé Expósito
978f456104SJosé Expósito	  If in doubt, say "N".
988f456104SJosé Expósito
996fcefd56SDave Airlieconfig DRM_KMS_HELPER
10013a8195bSDave Airlie	tristate
10113a8195bSDave Airlie	depends on DRM
10292b6f89fSDaniel Vetter	help
10392b6f89fSDaniel Vetter	  CRTC helpers for KMS drivers.
10492b6f89fSDaniel Vetter
10512a280c7SLyude Paulconfig DRM_DEBUG_DP_MST_TOPOLOGY_REFS
10612a280c7SLyude Paul        bool "Enable refcount backtrace history in the DP MST helpers"
107d6d07ca1SGuenter Roeck	depends on STACKTRACE_SUPPORT
10812a280c7SLyude Paul        select STACKDEPOT
10912a280c7SLyude Paul        depends on DRM_KMS_HELPER
11012a280c7SLyude Paul        depends on DEBUG_KERNEL
11112a280c7SLyude Paul        depends on EXPERT
11212a280c7SLyude Paul        help
11312a280c7SLyude Paul          Enables debug tracing for topology refs in DRM's DP MST helpers. A
11412a280c7SLyude Paul          history of each topology reference/dereference will be printed to the
11512a280c7SLyude Paul          kernel log once a port or branch device's topology refcount reaches 0.
11612a280c7SLyude Paul
11712a280c7SLyude Paul          This has the potential to use a lot of memory and print some very
11812a280c7SLyude Paul          large kernel messages. If in doubt, say "N".
11912a280c7SLyude Paul
120cd06ab2fSJani Nikulaconfig DRM_DEBUG_MODESET_LOCK
121cd06ab2fSJani Nikula	bool "Enable backtrace history for lock contention"
122cd06ab2fSJani Nikula	depends on STACKTRACE_SUPPORT
123cd06ab2fSJani Nikula	depends on DEBUG_KERNEL
124cd06ab2fSJani Nikula	depends on EXPERT
125cd06ab2fSJani Nikula	select STACKDEPOT
126cd06ab2fSJani Nikula	default y if DEBUG_WW_MUTEX_SLOWPATH
127cd06ab2fSJani Nikula	help
128cd06ab2fSJani Nikula	  Enable debug tracing of failures to gracefully handle drm modeset lock
129cd06ab2fSJani Nikula	  contention. A history of each drm modeset lock path hitting -EDEADLK
130cd06ab2fSJani Nikula	  will be saved until gracefully handled, and the backtrace will be
131cd06ab2fSJani Nikula	  printed when attempting to lock a contended lock.
132cd06ab2fSJani Nikula
133cd06ab2fSJani Nikula	  If in doubt, say "N".
134cd06ab2fSJani Nikula
135a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION
136a03fdcb1SArchit Taneja	bool "Enable legacy fbdev support for your modesetting driver"
137c242f484SJavier Martinez Canillas	depends on DRM
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
198e3912d09SKarolina Stolarekconfig DRM_TTM_KUNIT_TEST
199e3912d09SKarolina Stolarek        tristate "KUnit tests for TTM" if !KUNIT_ALL_TESTS
200e3912d09SKarolina Stolarek        default n
201*ff065eafSKarolina Stolarek        depends on DRM && KUNIT && MMU
202e3912d09SKarolina Stolarek        select DRM_TTM
203e3912d09SKarolina Stolarek        select DRM_EXPORT_FOR_TESTS if m
204e3912d09SKarolina Stolarek        select DRM_KUNIT_TEST_HELPERS
205e3912d09SKarolina Stolarek        default KUNIT_ALL_TESTS
206e3912d09SKarolina Stolarek        help
207e3912d09SKarolina Stolarek          Enables unit tests for TTM, a GPU memory manager subsystem used
208e3912d09SKarolina Stolarek          to manage memory buffers. This option is mostly useful for kernel
209e3912d09SKarolina Stolarek          developers.
210e3912d09SKarolina Stolarek
211e3912d09SKarolina Stolarek          If in doubt, say "N".
212e3912d09SKarolina Stolarek
21309593216SChristian Königconfig DRM_EXEC
21409593216SChristian König	tristate
21509593216SChristian König	depends on DRM
21609593216SChristian König	help
21709593216SChristian König	  Execution context for command submissions
21809593216SChristian König
2196387a3c4SArunpravinconfig DRM_BUDDY
2206387a3c4SArunpravin	tristate
2216387a3c4SArunpravin	depends on DRM
2226387a3c4SArunpravin	help
2236387a3c4SArunpravin	  A page based buddy allocator
2246387a3c4SArunpravin
22585438a8dSThomas Zimmermannconfig DRM_VRAM_HELPER
22685438a8dSThomas Zimmermann	tristate
22785438a8dSThomas Zimmermann	depends on DRM
22885438a8dSThomas Zimmermann	help
22985438a8dSThomas Zimmermann	  Helpers for VRAM memory management
23085438a8dSThomas Zimmermann
231ff540b76SGerd Hoffmannconfig DRM_TTM_HELPER
232ff540b76SGerd Hoffmann	tristate
233ff540b76SGerd Hoffmann	depends on DRM
234ff540b76SGerd Hoffmann	select DRM_TTM
235ff540b76SGerd Hoffmann	help
236ff540b76SGerd Hoffmann	  Helpers for ttm-based gem objects
237ff540b76SGerd Hoffmann
2384a83c26aSDanilo Krummrichconfig DRM_GEM_DMA_HELPER
2394b2b5e14SThomas Zimmermann	tristate
240e1c7e324SChristoph Hellwig	depends on DRM
241b21f187fSThomas Zimmermann	select FB_DMAMEM_HELPERS if DRM_FBDEV_EMULATION
242b9d47450SSascha Hauer	help
2434a83c26aSDanilo Krummrich	  Choose this if you need the GEM DMA helper functions
244b9d47450SSascha Hauer
2452194a63aSNoralf Trønnesconfig DRM_GEM_SHMEM_HELPER
2464b2b5e14SThomas Zimmermann	tristate
2478b93d1d7SDaniel Vetter	depends on DRM && MMU
2482194a63aSNoralf Trønnes	help
2492194a63aSNoralf Trønnes	  Choose this if you need the GEM shmem helper functions
2502194a63aSNoralf Trønnes
251849ee8a2SMaarten Lankhorstconfig DRM_SUBALLOC_HELPER
252849ee8a2SMaarten Lankhorst	tristate
253849ee8a2SMaarten Lankhorst	depends on DRM
254849ee8a2SMaarten Lankhorst
2551b1f42d8SLucas Stachconfig DRM_SCHED
2561b1f42d8SLucas Stach	tristate
2571b1f42d8SLucas Stach	depends on DRM
2581b1f42d8SLucas Stach
2596504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig"
2606504d0d9SRob Clark
2618e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig"
2628e22d792SLiviu Dudau
263f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig"
264f71d0187SDave Airlie
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
31411696c5eSBiju Dassource "drivers/gpu/drm/renesas/Kconfig"
315d8f4a9edSThierry Reding
3169026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig"
3179026e0d1SMaxime Ripard
3188bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig"
319ca18e142SDave Airlie
32016ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig"
321f64122c1SDave Airlie
322f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig"
323c8afe684SRob Clark
324dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig"
325dc5698e8SDave Airlie
326c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig"
327dee8268fSThierry Reding
328109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig"
329109eee2fSJianwei Wang
330dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig"
331aead40eaSThierry Reding
332b759012cSYannick Fertresource "drivers/gpu/drm/stm/Kconfig"
333b759012cSYannick Fertre
334aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig"
335f2cb3148SBenjamin Gaignard
336a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig"
337a33ee95fSThierry Reding
338f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig"
3394a488a7aSOded Gabbay
3406556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig"
341c8b75bcaSEric Anholt
34290b86fccSPaul Cercueilsource "drivers/gpu/drm/ingenic/Kconfig"
34390b86fccSPaul Cercueil
34457692c94SEric Anholtsource "drivers/gpu/drm/v3d/Kconfig"
34557692c94SEric Anholt
346c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig"
347a8c21a54SThe etnaviv authors
348f39db26cSSui Jingfengsource "drivers/gpu/drm/loongson/Kconfig"
349f39db26cSSui Jingfeng
350a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig"
35151dacf20SCarlos Palminha
35223e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig"
353119f5173SCK Hu
354efeeaefeSPaul Kocialkowskisource "drivers/gpu/drm/logicvc/Kconfig"
355efeeaefeSPaul 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
42144989ea3SCai Huoqing# leave here to list legacy drivers
422d92d9c3aSDavid Herrmannendif # DRM_LEGACY
423a33d42ddSChris Wilson
4249b6c80beSRandy Dunlapconfig DRM_EXPORT_FOR_TESTS
4259b6c80beSRandy Dunlap	bool
4269b6c80beSRandy Dunlap
427341a0ffcSHans de Goede# Separate option because drm_panel_orientation_quirks.c is shared with fbdev
428341a0ffcSHans de Goedeconfig DRM_PANEL_ORIENTATION_QUIRKS
429341a0ffcSHans de Goede	tristate
430341a0ffcSHans de Goede
431a33d42ddSChris Wilsonconfig DRM_LIB_RANDOM
432a33d42ddSChris Wilson	bool
433a33d42ddSChris Wilson	default n
434a1a98689SHans de Goede
435a1a98689SHans de Goedeconfig DRM_PRIVACY_SCREEN
436a1a98689SHans de Goede	bool
437a1a98689SHans de Goede	default n
438