xref: /linux/drivers/gpu/drm/Kconfig (revision 859cc65f4d97e23cc4388f6e3bc12f6dadef4aaa)
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
1357a6297eSDave Airlie	select I2C
143248877eSDave Airlie	select DMA_SHARED_BUFFER
1596260142SGustavo Padovan	select SYNC_FILE
16bfe3911aSChris Wilson# gallium uses SYS_kcmp for os_same_file_description() to de-duplicate
17bfe3911aSChris Wilson# device and dmabuf fd. Let's make sure that is available for our userspace.
18bfe3911aSChris Wilson	select KCMP
1993604a5aSThomas Zimmermann	select VIDEO_CMDLINE
209a758d87SThomas Zimmermann	select VIDEO_NOMODESET
21c0e09200SDave Airlie	help
22c0e09200SDave Airlie	  Kernel-level support for the Direct Rendering Infrastructure (DRI)
23c0e09200SDave Airlie	  introduced in XFree86 4.0. If you say Y here, you need to select
24c0e09200SDave Airlie	  the module that's right for your graphics card from the list below.
25c0e09200SDave Airlie	  These modules provide support for synchronization, security, and
26c0e09200SDave Airlie	  DMA transfers. Please see <http://dri.sourceforge.net/> for more
27c0e09200SDave Airlie	  details.  You should also select and configure AGP
28dcdb1674SJordan Crouse	  (/dev/agpgart) support if it is available for your platform.
29c0e09200SDave Airlie
30174102f4SNoralf Trønnesconfig DRM_MIPI_DBI
31174102f4SNoralf Trønnes	tristate
32174102f4SNoralf Trønnes	depends on DRM
33eb7de496SRandy Dunlap	select DRM_KMS_HELPER
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
5384ec6728SJim Cromieconfig DRM_USE_DYNAMIC_DEBUG
5484ec6728SJim Cromie	bool "use dynamic debug to implement drm.debug"
55bb2ff6c2SVille Syrjälä	default n
56bb2ff6c2SVille Syrjälä	depends on BROKEN
5784ec6728SJim Cromie	depends on DRM
5884ec6728SJim Cromie	depends on DYNAMIC_DEBUG || DYNAMIC_DEBUG_CORE
5984ec6728SJim Cromie	depends on JUMP_LABEL
6084ec6728SJim Cromie	help
6184ec6728SJim Cromie	  Use dynamic-debug to avoid drm_debug_enabled() runtime overheads.
6284ec6728SJim Cromie	  Due to callsite counts in DRM drivers (~4k in amdgpu) and 56
6384ec6728SJim Cromie	  bytes per callsite, the .data costs can be substantial, and
6484ec6728SJim Cromie	  are therefore configurable.
6584ec6728SJim Cromie
66b85be042SMaxime Ripardconfig DRM_KUNIT_TEST_HELPERS
67b85be042SMaxime Ripard	tristate
68b85be042SMaxime Ripard	depends on DRM && KUNIT
69b85be042SMaxime Ripard	help
70b85be042SMaxime Ripard	  KUnit Helpers for KMS drivers.
71b85be042SMaxime Ripard
728f456104SJosé Expósitoconfig DRM_KUNIT_TEST
738f456104SJosé Expósito	tristate "KUnit tests for DRM" if !KUNIT_ALL_TESTS
74ba8f16cdSMaíra Canal	depends on DRM && KUNIT
75ba8f16cdSMaíra Canal	select PRIME_NUMBERS
76ba8f16cdSMaíra Canal	select DRM_DISPLAY_DP_HELPER
77ba8f16cdSMaíra Canal	select DRM_DISPLAY_HELPER
78ba8f16cdSMaíra Canal	select DRM_LIB_RANDOM
798f456104SJosé Expósito	select DRM_KMS_HELPER
80ba8f16cdSMaíra Canal	select DRM_BUDDY
81ba8f16cdSMaíra Canal	select DRM_EXPORT_FOR_TESTS if m
82b85be042SMaxime Ripard	select DRM_KUNIT_TEST_HELPERS
838f456104SJosé Expósito	default KUNIT_ALL_TESTS
848f456104SJosé Expósito	help
858f456104SJosé Expósito	  This builds unit tests for DRM. This option is not useful for
868f456104SJosé Expósito	  distributions or general kernels, but only for kernel
878f456104SJosé Expósito	  developers working on DRM and associated drivers.
888f456104SJosé Expósito
898f456104SJosé Expósito	  For more information on KUnit and unit tests in general,
908f456104SJosé Expósito	  please refer to the KUnit documentation in
918f456104SJosé Expósito	  Documentation/dev-tools/kunit/.
928f456104SJosé Expósito
938f456104SJosé Expósito	  If in doubt, say "N".
948f456104SJosé Expósito
956fcefd56SDave Airlieconfig DRM_KMS_HELPER
9613a8195bSDave Airlie	tristate
9713a8195bSDave Airlie	depends on DRM
9892b6f89fSDaniel Vetter	help
9992b6f89fSDaniel Vetter	  CRTC helpers for KMS drivers.
10092b6f89fSDaniel Vetter
10112a280c7SLyude Paulconfig DRM_DEBUG_DP_MST_TOPOLOGY_REFS
10212a280c7SLyude Paul        bool "Enable refcount backtrace history in the DP MST helpers"
103d6d07ca1SGuenter Roeck	depends on STACKTRACE_SUPPORT
10412a280c7SLyude Paul        select STACKDEPOT
10512a280c7SLyude Paul        depends on DRM_KMS_HELPER
10612a280c7SLyude Paul        depends on DEBUG_KERNEL
10712a280c7SLyude Paul        depends on EXPERT
10812a280c7SLyude Paul        help
10912a280c7SLyude Paul          Enables debug tracing for topology refs in DRM's DP MST helpers. A
11012a280c7SLyude Paul          history of each topology reference/dereference will be printed to the
11112a280c7SLyude Paul          kernel log once a port or branch device's topology refcount reaches 0.
11212a280c7SLyude Paul
11312a280c7SLyude Paul          This has the potential to use a lot of memory and print some very
11412a280c7SLyude Paul          large kernel messages. If in doubt, say "N".
11512a280c7SLyude Paul
116cd06ab2fSJani Nikulaconfig DRM_DEBUG_MODESET_LOCK
117cd06ab2fSJani Nikula	bool "Enable backtrace history for lock contention"
118cd06ab2fSJani Nikula	depends on STACKTRACE_SUPPORT
119cd06ab2fSJani Nikula	depends on DEBUG_KERNEL
120cd06ab2fSJani Nikula	depends on EXPERT
121cd06ab2fSJani Nikula	select STACKDEPOT
122cd06ab2fSJani Nikula	default y if DEBUG_WW_MUTEX_SLOWPATH
123cd06ab2fSJani Nikula	help
124cd06ab2fSJani Nikula	  Enable debug tracing of failures to gracefully handle drm modeset lock
125cd06ab2fSJani Nikula	  contention. A history of each drm modeset lock path hitting -EDEADLK
126cd06ab2fSJani Nikula	  will be saved until gracefully handled, and the backtrace will be
127cd06ab2fSJani Nikula	  printed when attempting to lock a contended lock.
128cd06ab2fSJani Nikula
129cd06ab2fSJani Nikula	  If in doubt, say "N".
130cd06ab2fSJani Nikula
131a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION
132a03fdcb1SArchit Taneja	bool "Enable legacy fbdev support for your modesetting driver"
1339d6366e7SArnd Bergmann	depends on DRM_KMS_HELPER
1349d6366e7SArnd Bergmann	depends on FB=y || FB=DRM_KMS_HELPER
13591185d55SThomas Zimmermann	select FB_CFB_FILLRECT
13691185d55SThomas Zimmermann	select FB_CFB_COPYAREA
13791185d55SThomas Zimmermann	select FB_CFB_IMAGEBLIT
13891185d55SThomas Zimmermann	select FB_DEFERRED_IO
13991185d55SThomas Zimmermann	select FB_SYS_FOPS
14091185d55SThomas Zimmermann	select FB_SYS_FILLRECT
14191185d55SThomas Zimmermann	select FB_SYS_COPYAREA
14291185d55SThomas Zimmermann	select FB_SYS_IMAGEBLIT
14391185d55SThomas Zimmermann	select FRAMEBUFFER_CONSOLE if !EXPERT
14491185d55SThomas Zimmermann	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
145a03fdcb1SArchit Taneja	default y
146a03fdcb1SArchit Taneja	help
147a03fdcb1SArchit Taneja	  Choose this option if you have a need for the legacy fbdev
148a03fdcb1SArchit Taneja	  support. Note that this support also provides the linux console
149a03fdcb1SArchit Taneja	  support on top of your modesetting driver.
150a03fdcb1SArchit Taneja
151a03fdcb1SArchit Taneja	  If in doubt, say "Y".
152a03fdcb1SArchit Taneja
1535f152576SXinliang Liuconfig DRM_FBDEV_OVERALLOC
1545f152576SXinliang Liu	int "Overallocation of the fbdev buffer"
1555f152576SXinliang Liu	depends on DRM_FBDEV_EMULATION
1565f152576SXinliang Liu	default 100
1575f152576SXinliang Liu	help
1585f152576SXinliang Liu	  Defines the fbdev buffer overallocation in percent. Default
1595f152576SXinliang Liu	  is 100. Typical values for double buffering will be 200,
1605f152576SXinliang Liu	  triple buffering 300.
1615f152576SXinliang Liu
1624be9bd10SNeil Armstrongconfig DRM_FBDEV_LEAK_PHYS_SMEM
1634be9bd10SNeil Armstrong	bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)"
1644be9bd10SNeil Armstrong	depends on DRM_FBDEV_EMULATION && EXPERT
1654be9bd10SNeil Armstrong	default n
1664be9bd10SNeil Armstrong	help
1674be9bd10SNeil Armstrong	  In order to keep user-space compatibility, we want in certain
1684be9bd10SNeil Armstrong	  use-cases to keep leaking the fbdev physical address to the
1694be9bd10SNeil Armstrong	  user-space program handling the fbdev buffer.
1704be9bd10SNeil Armstrong	  This affects, not only, Amlogic, Allwinner or Rockchip devices
1714be9bd10SNeil Armstrong	  with ARM Mali GPUs using an userspace Blob.
1724be9bd10SNeil Armstrong	  This option is not supported by upstream developers and should be
1734be9bd10SNeil Armstrong	  removed as soon as possible and be considered as a broken and
1744be9bd10SNeil Armstrong	  legacy behaviour from a modern fbdev device driver.
1754be9bd10SNeil Armstrong
1764be9bd10SNeil Armstrong	  Please send any bug reports when using this to your proprietary
1774be9bd10SNeil Armstrong	  software vendor that requires this.
1784be9bd10SNeil Armstrong
1794be9bd10SNeil Armstrong	  If in doubt, say "N" or spread the word to your closed source
1804be9bd10SNeil Armstrong	  library vendor.
1814be9bd10SNeil Armstrong
182da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE
183da0df92bSCarsten Emde	bool "Allow to specify an EDID data set instead of probing for it"
18453fd40a9SJani Nikula	depends on DRM
185da0df92bSCarsten Emde	help
186da0df92bSCarsten Emde	  Say Y here, if you want to use EDID data to be loaded from the
187da0df92bSCarsten Emde	  /lib/firmware directory or one of the provided built-in
188da0df92bSCarsten Emde	  data sets. This may be necessary, if the graphics adapter or
189da0df92bSCarsten Emde	  monitor are unable to provide appropriate EDID data. Since this
190da0df92bSCarsten Emde	  feature is provided as a workaround for broken hardware, the
191da0df92bSCarsten Emde	  default case is N. Details and instructions how to build your own
19272ef5e52SMauro Carvalho Chehab	  EDID data are given in Documentation/admin-guide/edid.rst.
193da0df92bSCarsten Emde
1941e0f6642SThomas Zimmermannsource "drivers/gpu/drm/display/Kconfig"
1952c6d1fffSHans Verkuil
196ba4e7d97SThomas Hellstromconfig DRM_TTM
197771fe6b9SJerome Glisse	tristate
19862a0d98aSBenjamin Gaignard	depends on DRM && MMU
199ba4e7d97SThomas Hellstrom	help
200ba4e7d97SThomas Hellstrom	  GPU memory management subsystem for devices with multiple
201ba4e7d97SThomas Hellstrom	  GPU memory types. Will be enabled automatically if a device driver
202ba4e7d97SThomas Hellstrom	  uses it.
203ba4e7d97SThomas Hellstrom
2046387a3c4SArunpravinconfig DRM_BUDDY
2056387a3c4SArunpravin	tristate
2066387a3c4SArunpravin	depends on DRM
2076387a3c4SArunpravin	help
2086387a3c4SArunpravin	  A page based buddy allocator
2096387a3c4SArunpravin
21085438a8dSThomas Zimmermannconfig DRM_VRAM_HELPER
21185438a8dSThomas Zimmermann	tristate
21285438a8dSThomas Zimmermann	depends on DRM
21385438a8dSThomas Zimmermann	help
21485438a8dSThomas Zimmermann	  Helpers for VRAM memory management
21585438a8dSThomas Zimmermann
216ff540b76SGerd Hoffmannconfig DRM_TTM_HELPER
217ff540b76SGerd Hoffmann	tristate
218ff540b76SGerd Hoffmann	depends on DRM
219ff540b76SGerd Hoffmann	select DRM_TTM
220ff540b76SGerd Hoffmann	help
221ff540b76SGerd Hoffmann	  Helpers for ttm-based gem objects
222ff540b76SGerd Hoffmann
2234a83c26aSDanilo Krummrichconfig DRM_GEM_DMA_HELPER
2244b2b5e14SThomas Zimmermann	tristate
225e1c7e324SChristoph Hellwig	depends on DRM
226*859cc65fSThomas Zimmermann	select FB_SYS_HELPERS if DRM_FBDEV_EMULATION
227b9d47450SSascha Hauer	help
2284a83c26aSDanilo Krummrich	  Choose this if you need the GEM DMA helper functions
229b9d47450SSascha Hauer
2302194a63aSNoralf Trønnesconfig DRM_GEM_SHMEM_HELPER
2314b2b5e14SThomas Zimmermann	tristate
2328b93d1d7SDaniel Vetter	depends on DRM && MMU
2332194a63aSNoralf Trønnes	help
2342194a63aSNoralf Trønnes	  Choose this if you need the GEM shmem helper functions
2352194a63aSNoralf Trønnes
236849ee8a2SMaarten Lankhorstconfig DRM_SUBALLOC_HELPER
237849ee8a2SMaarten Lankhorst	tristate
238849ee8a2SMaarten Lankhorst	depends on DRM
239849ee8a2SMaarten Lankhorst
2401b1f42d8SLucas Stachconfig DRM_SCHED
2411b1f42d8SLucas Stach	tristate
2421b1f42d8SLucas Stach	depends on DRM
2431b1f42d8SLucas Stach
2446504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig"
2456504d0d9SRob Clark
2468e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig"
2478e22d792SLiviu Dudau
248f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig"
249f71d0187SDave Airlie
250d38ceaf9SAlex Deuchersource "drivers/gpu/drm/amd/amdgpu/Kconfig"
251a8fe58ceSMaruthi Bayyavarapu
252f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig"
253f3c93cbdSBen Skeggs
2544520f53aSDaniel Vettersource "drivers/gpu/drm/i915/Kconfig"
25599486b8eSJosh Triplett
256ed794057SAnitha Chrisanthussource "drivers/gpu/drm/kmb/Kconfig"
257ed794057SAnitha Chrisanthus
258502e95c6SZach Reiznerconfig DRM_VGEM
259502e95c6SZach Reizner	tristate "Virtual GEM provider"
26045d9c8ddSDaniel Vetter	depends on DRM && MMU
26145d9c8ddSDaniel Vetter	select DRM_GEM_SHMEM_HELPER
262502e95c6SZach Reizner	help
263502e95c6SZach Reizner	  Choose this option to get a virtual graphics memory manager,
264502e95c6SZach Reizner	  as used by Mesa's software renderer for enhanced performance.
265502e95c6SZach Reizner	  If M is selected the module will be called vgem.
266502e95c6SZach Reizner
2671c7c5fd9SHaneen Mohammedconfig DRM_VKMS
268c91b007eSRodrigo Siqueira	tristate "Virtual KMS (EXPERIMENTAL)"
26945d9c8ddSDaniel Vetter	depends on DRM && MMU
2705ba57babSArnd Bergmann	select DRM_KMS_HELPER
271488c888aSDaniel Vetter	select DRM_GEM_SHMEM_HELPER
272f2a4a13aSzhong jiang	select CRC32
273c91b007eSRodrigo Siqueira	default n
2741c7c5fd9SHaneen Mohammed	help
275c91b007eSRodrigo Siqueira	  Virtual Kernel Mode-Setting (VKMS) is used for testing or for
276c91b007eSRodrigo Siqueira	  running GPU in a headless machines. Choose this option to get
277c91b007eSRodrigo Siqueira	  a VKMS.
278c91b007eSRodrigo Siqueira
2791c7c5fd9SHaneen Mohammed	  If M is selected the module will be called vkms.
280502e95c6SZach Reizner
2811c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig"
2825a7b74beSThomas Hellstrom
2832048e328SMark Yaosource "drivers/gpu/drm/rockchip/Kconfig"
2842048e328SMark Yao
2855a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig"
28691c75492SAlan Cox
28791c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig"
28891c75492SAlan Cox
2895320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig"
290312fec14SDave Airlie
291312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig"
292312fec14SDave Airlie
293414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig"
294f9aa76a8SDave Airlie
29596f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig"
29696f60e37SRussell King
2971a396789SBoris Brezillonsource "drivers/gpu/drm/atmel-hlcdc/Kconfig"
2981a396789SBoris Brezillon
2994bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig"
3004bf8e196SLaurent Pinchart
30151c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig"
302d8f4a9edSThierry Reding
3039026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig"
3049026e0d1SMaxime Ripard
3058bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig"
306ca18e142SDave Airlie
30716ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig"
308f64122c1SDave Airlie
309f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig"
310c8afe684SRob Clark
311dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig"
312dc5698e8SDave Airlie
313c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig"
314dee8268fSThierry Reding
315109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig"
316109eee2fSJianwei Wang
317dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig"
318aead40eaSThierry Reding
319b759012cSYannick Fertresource "drivers/gpu/drm/stm/Kconfig"
320b759012cSYannick Fertre
321aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig"
322f2cb3148SBenjamin Gaignard
323a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig"
324a33ee95fSThierry Reding
325f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig"
3264a488a7aSOded Gabbay
3276556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig"
328c8b75bcaSEric Anholt
32990b86fccSPaul Cercueilsource "drivers/gpu/drm/ingenic/Kconfig"
33090b86fccSPaul Cercueil
33157692c94SEric Anholtsource "drivers/gpu/drm/v3d/Kconfig"
33257692c94SEric Anholt
333c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig"
334a8c21a54SThe etnaviv authors
335a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig"
33651dacf20SCarlos Palminha
33723e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig"
338119f5173SCK Hu
339efeeaefeSPaul Kocialkowskisource "drivers/gpu/drm/logicvc/Kconfig"
340efeeaefeSPaul Kocialkowski
341119f5173SCK Husource "drivers/gpu/drm/mediatek/Kconfig"
342d92d9c3aSDavid Herrmann
34345d59d70SMarek Vasutsource "drivers/gpu/drm/mxsfb/Kconfig"
34445d59d70SMarek Vasut
345bbbe775eSNeil Armstrongsource "drivers/gpu/drm/meson/Kconfig"
346bbbe775eSNeil Armstrong
347043386a0SNoralf Trønnessource "drivers/gpu/drm/tiny/Kconfig"
348fa201ac2SNoralf Trønnes
349bed41005STom Cookseysource "drivers/gpu/drm/pl111/Kconfig"
350bed41005STom Cooksey
351179c02feSLinus Walleijsource "drivers/gpu/drm/tve200/Kconfig"
352179c02feSLinus Walleij
353c575b7eeSOleksandr Andrushchenkosource "drivers/gpu/drm/xen/Kconfig"
354c575b7eeSOleksandr Andrushchenko
355131abc56SHans de Goedesource "drivers/gpu/drm/vboxvideo/Kconfig"
356131abc56SHans de Goede
357a1d2a633SQiang Yusource "drivers/gpu/drm/lima/Kconfig"
358a1d2a633SQiang Yu
359f3ba9122SRob Herringsource "drivers/gpu/drm/panfrost/Kconfig"
360f3ba9122SRob Herring
3614f2a8f58SJoel Stanleysource "drivers/gpu/drm/aspeed/Kconfig"
3624f2a8f58SJoel Stanley
3635fc537bfSLinus Walleijsource "drivers/gpu/drm/mcde/Kconfig"
3645fc537bfSLinus Walleij
36532a1795fSJyri Sarhasource "drivers/gpu/drm/tidss/Kconfig"
36632a1795fSJyri Sarha
367d76271d2SHyun Kwonsource "drivers/gpu/drm/xlnx/Kconfig"
368d76271d2SHyun Kwon
36940e1a70bSNoralf Trønnessource "drivers/gpu/drm/gud/Kconfig"
37040e1a70bSNoralf Trønnes
371a61732e8SJavier Martinez Canillassource "drivers/gpu/drm/solomon/Kconfig"
372a61732e8SJavier Martinez Canillas
37343531eddSKevin Tangsource "drivers/gpu/drm/sprd/Kconfig"
37443531eddSKevin Tang
37576c56a5aSDeepak Rawatconfig DRM_HYPERV
37676c56a5aSDeepak Rawat	tristate "DRM Support for Hyper-V synthetic video device"
37776c56a5aSDeepak Rawat	depends on DRM && PCI && MMU && HYPERV
37876c56a5aSDeepak Rawat	select DRM_KMS_HELPER
37976c56a5aSDeepak Rawat	select DRM_GEM_SHMEM_HELPER
38076c56a5aSDeepak Rawat	help
38176c56a5aSDeepak Rawat	 This is a KMS driver for Hyper-V synthetic video device. Choose this
38276c56a5aSDeepak Rawat	 option if you would like to enable drm driver for Hyper-V virtual
38376c56a5aSDeepak Rawat	 machine. Unselect Hyper-V framebuffer driver (CONFIG_FB_HYPERV) so
38476c56a5aSDeepak Rawat	 that DRM driver is used by default.
38576c56a5aSDeepak Rawat
38676c56a5aSDeepak Rawat	 If M is selected the module will be called hyperv_drm.
38776c56a5aSDeepak Rawat
388d92d9c3aSDavid Herrmann# Keep legacy drivers last
389d92d9c3aSDavid Herrmann
390d92d9c3aSDavid Herrmannmenuconfig DRM_LEGACY
391d92d9c3aSDavid Herrmann	bool "Enable legacy drivers (DANGEROUS)"
3927e53c284SBenjamin Gaignard	depends on DRM && MMU
393d92d9c3aSDavid Herrmann	help
394d92d9c3aSDavid Herrmann	  Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous
395d92d9c3aSDavid Herrmann	  APIs to user-space, which can be used to circumvent access
396d92d9c3aSDavid Herrmann	  restrictions and other security measures. For backwards compatibility
397d92d9c3aSDavid Herrmann	  those drivers are still available, but their use is highly
398d92d9c3aSDavid Herrmann	  inadvisable and might harm your system.
399d92d9c3aSDavid Herrmann
400d92d9c3aSDavid Herrmann	  You are recommended to use the safe modeset-only drivers instead, and
401d92d9c3aSDavid Herrmann	  perform 3D emulation in user-space.
402d92d9c3aSDavid Herrmann
403d92d9c3aSDavid Herrmann	  Unless you have strong reasons to go rogue, say "N".
404d92d9c3aSDavid Herrmann
405d92d9c3aSDavid Herrmannif DRM_LEGACY
40644989ea3SCai Huoqing# leave here to list legacy drivers
407d92d9c3aSDavid Herrmannendif # DRM_LEGACY
408a33d42ddSChris Wilson
4099b6c80beSRandy Dunlapconfig DRM_EXPORT_FOR_TESTS
4109b6c80beSRandy Dunlap	bool
4119b6c80beSRandy Dunlap
412341a0ffcSHans de Goede# Separate option because drm_panel_orientation_quirks.c is shared with fbdev
413341a0ffcSHans de Goedeconfig DRM_PANEL_ORIENTATION_QUIRKS
414341a0ffcSHans de Goede	tristate
415341a0ffcSHans de Goede
416a33d42ddSChris Wilsonconfig DRM_LIB_RANDOM
417a33d42ddSChris Wilson	bool
418a33d42ddSChris Wilson	default n
419a1a98689SHans de Goede
420a1a98689SHans de Goedeconfig DRM_PRIVACY_SCREEN
421a1a98689SHans de Goede	bool
422a1a98689SHans de Goede	default n
423