xref: /linux/drivers/gpu/drm/Kconfig (revision 91185d55b32e7e377f15fb46a62b216f8d3038d4)
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
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
33174102f4SNoralf Trønnes
34068a0023SAndrzej Hajdaconfig DRM_MIPI_DSI
35068a0023SAndrzej Hajda	bool
36068a0023SAndrzej Hajda	depends on DRM
37068a0023SAndrzej Hajda
38e94cb37bSRafael Antognolliconfig DRM_DP_AUX_CHARDEV
39e94cb37bSRafael Antognolli	bool "DRM DP AUX Interface"
40e94cb37bSRafael Antognolli	depends on DRM
41e94cb37bSRafael Antognolli	help
42e94cb37bSRafael Antognolli	  Choose this option to enable a /dev/drm_dp_auxN node that allows to
43e94cb37bSRafael Antognolli	  read and write values to arbitrary DPCD registers on the DP aux
44e94cb37bSRafael Antognolli	  channel.
45e94cb37bSRafael Antognolli
465705670dSChris Wilsonconfig DRM_DEBUG_MM
475705670dSChris Wilson	bool "Insert extra checks and debug info into the DRM range managers"
485705670dSChris Wilson	default n
49cd456f8dSChris Wilson	depends on DRM=y
504b514e10SChris Wilson	depends on STACKTRACE_SUPPORT
515705670dSChris Wilson	select STACKDEPOT
525705670dSChris Wilson	help
535705670dSChris Wilson	  Enable allocation tracking of memory manager and leak detection on
545705670dSChris Wilson	  shutdown.
555705670dSChris Wilson
565705670dSChris Wilson	  Recommended for driver developers only.
575705670dSChris Wilson
585705670dSChris Wilson	  If in doubt, say "N".
595705670dSChris Wilson
6034b13e5eSMaarten Lankhorstconfig DRM_DEBUG_SELFTEST
6134b13e5eSMaarten Lankhorst	tristate "kselftests for DRM"
6250f0033dSChris Wilson	depends on DRM
6350f0033dSChris Wilson	depends on DEBUG_KERNEL
6450f0033dSChris Wilson	select PRIME_NUMBERS
6550f0033dSChris Wilson	select DRM_LIB_RANDOM
667420e049SMaarten Lankhorst	select DRM_KMS_HELPER
676349120dSChris Wilson	select DRM_EXPORT_FOR_TESTS if m
6850f0033dSChris Wilson	default n
6950f0033dSChris Wilson	help
7034b13e5eSMaarten Lankhorst	  This option provides kernel modules that can be used to run
7134b13e5eSMaarten Lankhorst	  various selftests on parts of the DRM api. This option is not
7250f0033dSChris Wilson	  useful for distributions or general kernels, but only for kernel
7350f0033dSChris Wilson	  developers working on DRM and associated drivers.
7450f0033dSChris Wilson
7550f0033dSChris Wilson	  If in doubt, say "N".
7650f0033dSChris Wilson
776fcefd56SDave Airlieconfig DRM_KMS_HELPER
7813a8195bSDave Airlie	tristate
7913a8195bSDave Airlie	depends on DRM
8092b6f89fSDaniel Vetter	help
8192b6f89fSDaniel Vetter	  CRTC helpers for KMS drivers.
8292b6f89fSDaniel Vetter
8312a280c7SLyude Paulconfig DRM_DEBUG_DP_MST_TOPOLOGY_REFS
8412a280c7SLyude Paul        bool "Enable refcount backtrace history in the DP MST helpers"
85d6d07ca1SGuenter Roeck	depends on STACKTRACE_SUPPORT
8612a280c7SLyude Paul        select STACKDEPOT
8712a280c7SLyude Paul        depends on DRM_KMS_HELPER
8812a280c7SLyude Paul        depends on DEBUG_KERNEL
8912a280c7SLyude Paul        depends on EXPERT
9012a280c7SLyude Paul        help
9112a280c7SLyude Paul          Enables debug tracing for topology refs in DRM's DP MST helpers. A
9212a280c7SLyude Paul          history of each topology reference/dereference will be printed to the
9312a280c7SLyude Paul          kernel log once a port or branch device's topology refcount reaches 0.
9412a280c7SLyude Paul
9512a280c7SLyude Paul          This has the potential to use a lot of memory and print some very
9612a280c7SLyude Paul          large kernel messages. If in doubt, say "N".
9712a280c7SLyude Paul
98a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION
99a03fdcb1SArchit Taneja	bool "Enable legacy fbdev support for your modesetting driver"
100a03fdcb1SArchit Taneja	depends on DRM
101a03fdcb1SArchit Taneja	select DRM_KMS_HELPER
102a03fdcb1SArchit Taneja	select DRM_KMS_FB_HELPER
103*91185d55SThomas Zimmermann	select FB
104*91185d55SThomas Zimmermann	select FB_CFB_FILLRECT
105*91185d55SThomas Zimmermann	select FB_CFB_COPYAREA
106*91185d55SThomas Zimmermann	select FB_CFB_IMAGEBLIT
107*91185d55SThomas Zimmermann	select FB_DEFERRED_IO
108*91185d55SThomas Zimmermann	select FB_SYS_FOPS
109*91185d55SThomas Zimmermann	select FB_SYS_FILLRECT
110*91185d55SThomas Zimmermann	select FB_SYS_COPYAREA
111*91185d55SThomas Zimmermann	select FB_SYS_IMAGEBLIT
112*91185d55SThomas Zimmermann	select FRAMEBUFFER_CONSOLE if !EXPERT
113*91185d55SThomas Zimmermann	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
114a03fdcb1SArchit Taneja	default y
115a03fdcb1SArchit Taneja	help
116a03fdcb1SArchit Taneja	  Choose this option if you have a need for the legacy fbdev
117a03fdcb1SArchit Taneja	  support. Note that this support also provides the linux console
118a03fdcb1SArchit Taneja	  support on top of your modesetting driver.
119a03fdcb1SArchit Taneja
120a03fdcb1SArchit Taneja	  If in doubt, say "Y".
121a03fdcb1SArchit Taneja
1225f152576SXinliang Liuconfig DRM_FBDEV_OVERALLOC
1235f152576SXinliang Liu	int "Overallocation of the fbdev buffer"
1245f152576SXinliang Liu	depends on DRM_FBDEV_EMULATION
1255f152576SXinliang Liu	default 100
1265f152576SXinliang Liu	help
1275f152576SXinliang Liu	  Defines the fbdev buffer overallocation in percent. Default
1285f152576SXinliang Liu	  is 100. Typical values for double buffering will be 200,
1295f152576SXinliang Liu	  triple buffering 300.
1305f152576SXinliang Liu
1314be9bd10SNeil Armstrongconfig DRM_FBDEV_LEAK_PHYS_SMEM
1324be9bd10SNeil Armstrong	bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)"
1334be9bd10SNeil Armstrong	depends on DRM_FBDEV_EMULATION && EXPERT
1344be9bd10SNeil Armstrong	default n
1354be9bd10SNeil Armstrong	help
1364be9bd10SNeil Armstrong	  In order to keep user-space compatibility, we want in certain
1374be9bd10SNeil Armstrong	  use-cases to keep leaking the fbdev physical address to the
1384be9bd10SNeil Armstrong	  user-space program handling the fbdev buffer.
1394be9bd10SNeil Armstrong	  This affects, not only, Amlogic, Allwinner or Rockchip devices
1404be9bd10SNeil Armstrong	  with ARM Mali GPUs using an userspace Blob.
1414be9bd10SNeil Armstrong	  This option is not supported by upstream developers and should be
1424be9bd10SNeil Armstrong	  removed as soon as possible and be considered as a broken and
1434be9bd10SNeil Armstrong	  legacy behaviour from a modern fbdev device driver.
1444be9bd10SNeil Armstrong
1454be9bd10SNeil Armstrong	  Please send any bug reports when using this to your proprietary
1464be9bd10SNeil Armstrong	  software vendor that requires this.
1474be9bd10SNeil Armstrong
1484be9bd10SNeil Armstrong	  If in doubt, say "N" or spread the word to your closed source
1494be9bd10SNeil Armstrong	  library vendor.
1504be9bd10SNeil Armstrong
151da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE
152da0df92bSCarsten Emde	bool "Allow to specify an EDID data set instead of probing for it"
15353fd40a9SJani Nikula	depends on DRM
154da0df92bSCarsten Emde	help
155da0df92bSCarsten Emde	  Say Y here, if you want to use EDID data to be loaded from the
156da0df92bSCarsten Emde	  /lib/firmware directory or one of the provided built-in
157da0df92bSCarsten Emde	  data sets. This may be necessary, if the graphics adapter or
158da0df92bSCarsten Emde	  monitor are unable to provide appropriate EDID data. Since this
159da0df92bSCarsten Emde	  feature is provided as a workaround for broken hardware, the
160da0df92bSCarsten Emde	  default case is N. Details and instructions how to build your own
16172ef5e52SMauro Carvalho Chehab	  EDID data are given in Documentation/admin-guide/edid.rst.
162da0df92bSCarsten Emde
1632c6d1fffSHans Verkuilconfig DRM_DP_CEC
1642c6d1fffSHans Verkuil	bool "Enable DisplayPort CEC-Tunneling-over-AUX HDMI support"
165539bbf31SHans Verkuil	depends on DRM
1662c6d1fffSHans Verkuil	select CEC_CORE
1672c6d1fffSHans Verkuil	help
1682c6d1fffSHans Verkuil	  Choose this option if you want to enable HDMI CEC support for
1692c6d1fffSHans Verkuil	  DisplayPort/USB-C to HDMI adapters.
1702c6d1fffSHans Verkuil
1712c6d1fffSHans Verkuil	  Note: not all adapters support this feature, and even for those
1722c6d1fffSHans Verkuil	  that do support this they often do not hook up the CEC pin.
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
18285438a8dSThomas Zimmermannconfig DRM_VRAM_HELPER
18385438a8dSThomas Zimmermann	tristate
18485438a8dSThomas Zimmermann	depends on DRM
18585438a8dSThomas Zimmermann	help
18685438a8dSThomas Zimmermann	  Helpers for VRAM memory management
18785438a8dSThomas Zimmermann
188ff540b76SGerd Hoffmannconfig DRM_TTM_HELPER
189ff540b76SGerd Hoffmann	tristate
190ff540b76SGerd Hoffmann	depends on DRM
191ff540b76SGerd Hoffmann	select DRM_TTM
192ff540b76SGerd Hoffmann	help
193ff540b76SGerd Hoffmann	  Helpers for ttm-based gem objects
194ff540b76SGerd Hoffmann
195b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER
196b9d47450SSascha Hauer	bool
197e1c7e324SChristoph Hellwig	depends on DRM
198b9d47450SSascha Hauer	help
199b9d47450SSascha Hauer	  Choose this if you need the GEM CMA helper functions
200b9d47450SSascha Hauer
2012e3b3c42SLars-Peter Clausenconfig DRM_KMS_CMA_HELPER
2022e3b3c42SLars-Peter Clausen	bool
203e1c7e324SChristoph Hellwig	depends on DRM
2042e3b3c42SLars-Peter Clausen	select DRM_GEM_CMA_HELPER
2052e3b3c42SLars-Peter Clausen	help
2062e3b3c42SLars-Peter Clausen	  Choose this if you need the KMS CMA helper functions
2072e3b3c42SLars-Peter Clausen
2082194a63aSNoralf Trønnesconfig DRM_GEM_SHMEM_HELPER
2092194a63aSNoralf Trønnes	bool
2102194a63aSNoralf Trønnes	depends on DRM
2112194a63aSNoralf Trønnes	help
2122194a63aSNoralf Trønnes	  Choose this if you need the GEM shmem helper functions
2132194a63aSNoralf Trønnes
2141b1f42d8SLucas Stachconfig DRM_SCHED
2151b1f42d8SLucas Stach	tristate
2161b1f42d8SLucas Stach	depends on DRM
2171b1f42d8SLucas Stach
2186504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig"
2196504d0d9SRob Clark
2208e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig"
2218e22d792SLiviu Dudau
222c0e09200SDave Airlieconfig DRM_RADEON
223c0e09200SDave Airlie	tristate "ATI Radeon"
224011cda58SBenjamin Gaignard	depends on DRM && PCI && MMU
225cba2afb6SChristian König	depends on AGP || !AGP
22670967ab9SBen Hutchings	select FW_LOADER
227a0cdc649SDave Airlie        select DRM_KMS_HELPER
228a0cdc649SDave Airlie        select DRM_TTM
22949a3f51dSThomas Zimmermann	select DRM_TTM_HELPER
2305d9b7e2dSDave Airlie	select POWER_SUPPLY
23121a8122aSAlex Deucher	select HWMON
23214adc892SChristian König	select BACKLIGHT_CLASS_DEVICE
2330aea5e4aSAlex Deucher	select INTERVAL_TREE
234c0e09200SDave Airlie	help
235c0e09200SDave Airlie	  Choose this option if you have an ATI Radeon graphics card.  There
236c0e09200SDave Airlie	  are both PCI and AGP versions.  You don't need to choose this to
237c0e09200SDave Airlie	  run the Radeon in plain VGA mode.
238c0e09200SDave Airlie
239c0e09200SDave Airlie	  If M is selected, the module will be called radeon.
240c0e09200SDave Airlie
241f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig"
242f71d0187SDave Airlie
243d38ceaf9SAlex Deucherconfig DRM_AMDGPU
244d38ceaf9SAlex Deucher	tristate "AMD GPU"
245011cda58SBenjamin Gaignard	depends on DRM && PCI && MMU
246d38ceaf9SAlex Deucher	select FW_LOADER
247d38ceaf9SAlex Deucher	select DRM_KMS_HELPER
2481b1f42d8SLucas Stach	select DRM_SCHED
249d38ceaf9SAlex Deucher	select DRM_TTM
25049a3f51dSThomas Zimmermann	select DRM_TTM_HELPER
251d38ceaf9SAlex Deucher	select POWER_SUPPLY
252d38ceaf9SAlex Deucher	select HWMON
253d38ceaf9SAlex Deucher	select BACKLIGHT_CLASS_DEVICE
254d38ceaf9SAlex Deucher	select INTERVAL_TREE
255a2f14820SFelix Kuehling	select CHASH
256d38ceaf9SAlex Deucher	help
257d38ceaf9SAlex Deucher	  Choose this option if you have a recent AMD Radeon graphics card.
258d38ceaf9SAlex Deucher
259d38ceaf9SAlex Deucher	  If M is selected, the module will be called amdgpu.
260d38ceaf9SAlex Deucher
261d38ceaf9SAlex Deuchersource "drivers/gpu/drm/amd/amdgpu/Kconfig"
262a8fe58ceSMaruthi Bayyavarapu
263f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig"
264f3c93cbdSBen Skeggs
2654520f53aSDaniel Vettersource "drivers/gpu/drm/i915/Kconfig"
26699486b8eSJosh Triplett
267ed794057SAnitha Chrisanthussource "drivers/gpu/drm/kmb/Kconfig"
268ed794057SAnitha Chrisanthus
269502e95c6SZach Reiznerconfig DRM_VGEM
270502e95c6SZach Reizner	tristate "Virtual GEM provider"
271502e95c6SZach Reizner	depends on DRM
272502e95c6SZach Reizner	help
273502e95c6SZach Reizner	  Choose this option to get a virtual graphics memory manager,
274502e95c6SZach Reizner	  as used by Mesa's software renderer for enhanced performance.
275502e95c6SZach Reizner	  If M is selected the module will be called vgem.
276502e95c6SZach Reizner
2771c7c5fd9SHaneen Mohammedconfig DRM_VKMS
278c91b007eSRodrigo Siqueira	tristate "Virtual KMS (EXPERIMENTAL)"
2791c7c5fd9SHaneen Mohammed	depends on DRM
2805ba57babSArnd Bergmann	select DRM_KMS_HELPER
281488c888aSDaniel Vetter	select DRM_GEM_SHMEM_HELPER
282f2a4a13aSzhong jiang	select CRC32
283c91b007eSRodrigo Siqueira	default n
2841c7c5fd9SHaneen Mohammed	help
285c91b007eSRodrigo Siqueira	  Virtual Kernel Mode-Setting (VKMS) is used for testing or for
286c91b007eSRodrigo Siqueira	  running GPU in a headless machines. Choose this option to get
287c91b007eSRodrigo Siqueira	  a VKMS.
288c91b007eSRodrigo Siqueira
2891c7c5fd9SHaneen Mohammed	  If M is selected the module will be called vkms.
290502e95c6SZach Reizner
2911c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig"
2925a7b74beSThomas Hellstrom
2932048e328SMark Yaosource "drivers/gpu/drm/rockchip/Kconfig"
2942048e328SMark Yao
2955a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig"
29691c75492SAlan Cox
29791c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig"
29891c75492SAlan Cox
2995320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig"
300312fec14SDave Airlie
301312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig"
302312fec14SDave Airlie
303414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig"
304f9aa76a8SDave Airlie
30596f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig"
30696f60e37SRussell King
3071a396789SBoris Brezillonsource "drivers/gpu/drm/atmel-hlcdc/Kconfig"
3081a396789SBoris Brezillon
3094bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig"
3104bf8e196SLaurent Pinchart
31151c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig"
312d8f4a9edSThierry Reding
3139026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig"
3149026e0d1SMaxime Ripard
3158bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig"
316ca18e142SDave Airlie
31716ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig"
318f64122c1SDave Airlie
319f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig"
320c8afe684SRob Clark
3210a6659bdSGerd Hoffmannsource "drivers/gpu/drm/bochs/Kconfig"
3220a6659bdSGerd Hoffmann
323dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig"
324dc5698e8SDave Airlie
325c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig"
326dee8268fSThierry Reding
327109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig"
328109eee2fSJianwei Wang
329dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig"
330aead40eaSThierry Reding
331b759012cSYannick Fertresource "drivers/gpu/drm/stm/Kconfig"
332b759012cSYannick Fertre
333aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig"
334f2cb3148SBenjamin Gaignard
335a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig"
336a33ee95fSThierry Reding
337f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig"
3384a488a7aSOded Gabbay
3396556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig"
340c8b75bcaSEric Anholt
34190b86fccSPaul Cercueilsource "drivers/gpu/drm/ingenic/Kconfig"
34290b86fccSPaul Cercueil
34357692c94SEric Anholtsource "drivers/gpu/drm/v3d/Kconfig"
34457692c94SEric Anholt
345c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig"
346a8c21a54SThe etnaviv authors
347a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig"
34851dacf20SCarlos Palminha
34923e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig"
350119f5173SCK Hu
351119f5173SCK Husource "drivers/gpu/drm/mediatek/Kconfig"
352d92d9c3aSDavid Herrmann
3530a886f59SShawn Guosource "drivers/gpu/drm/zte/Kconfig"
3540a886f59SShawn Guo
35545d59d70SMarek Vasutsource "drivers/gpu/drm/mxsfb/Kconfig"
35645d59d70SMarek Vasut
357bbbe775eSNeil Armstrongsource "drivers/gpu/drm/meson/Kconfig"
358bbbe775eSNeil Armstrong
359043386a0SNoralf Trønnessource "drivers/gpu/drm/tiny/Kconfig"
360fa201ac2SNoralf Trønnes
361bed41005STom Cookseysource "drivers/gpu/drm/pl111/Kconfig"
362bed41005STom Cooksey
363179c02feSLinus Walleijsource "drivers/gpu/drm/tve200/Kconfig"
364179c02feSLinus Walleij
365c575b7eeSOleksandr Andrushchenkosource "drivers/gpu/drm/xen/Kconfig"
366c575b7eeSOleksandr Andrushchenko
367131abc56SHans de Goedesource "drivers/gpu/drm/vboxvideo/Kconfig"
368131abc56SHans de Goede
369a1d2a633SQiang Yusource "drivers/gpu/drm/lima/Kconfig"
370a1d2a633SQiang Yu
371f3ba9122SRob Herringsource "drivers/gpu/drm/panfrost/Kconfig"
372f3ba9122SRob Herring
3734f2a8f58SJoel Stanleysource "drivers/gpu/drm/aspeed/Kconfig"
3744f2a8f58SJoel Stanley
3755fc537bfSLinus Walleijsource "drivers/gpu/drm/mcde/Kconfig"
3765fc537bfSLinus Walleij
37732a1795fSJyri Sarhasource "drivers/gpu/drm/tidss/Kconfig"
37832a1795fSJyri Sarha
379d76271d2SHyun Kwonsource "drivers/gpu/drm/xlnx/Kconfig"
380d76271d2SHyun Kwon
38140e1a70bSNoralf Trønnessource "drivers/gpu/drm/gud/Kconfig"
38240e1a70bSNoralf Trønnes
383d92d9c3aSDavid Herrmann# Keep legacy drivers last
384d92d9c3aSDavid Herrmann
385d92d9c3aSDavid Herrmannmenuconfig DRM_LEGACY
386d92d9c3aSDavid Herrmann	bool "Enable legacy drivers (DANGEROUS)"
3877e53c284SBenjamin Gaignard	depends on DRM && MMU
388d92d9c3aSDavid Herrmann	help
389d92d9c3aSDavid Herrmann	  Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous
390d92d9c3aSDavid Herrmann	  APIs to user-space, which can be used to circumvent access
391d92d9c3aSDavid Herrmann	  restrictions and other security measures. For backwards compatibility
392d92d9c3aSDavid Herrmann	  those drivers are still available, but their use is highly
393d92d9c3aSDavid Herrmann	  inadvisable and might harm your system.
394d92d9c3aSDavid Herrmann
395d92d9c3aSDavid Herrmann	  You are recommended to use the safe modeset-only drivers instead, and
396d92d9c3aSDavid Herrmann	  perform 3D emulation in user-space.
397d92d9c3aSDavid Herrmann
398d92d9c3aSDavid Herrmann	  Unless you have strong reasons to go rogue, say "N".
399d92d9c3aSDavid Herrmann
400d92d9c3aSDavid Herrmannif DRM_LEGACY
401d92d9c3aSDavid Herrmann
402d92d9c3aSDavid Herrmannconfig DRM_TDFX
403d92d9c3aSDavid Herrmann	tristate "3dfx Banshee/Voodoo3+"
404d92d9c3aSDavid Herrmann	depends on DRM && PCI
405d92d9c3aSDavid Herrmann	help
406d92d9c3aSDavid Herrmann	  Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
407d92d9c3aSDavid Herrmann	  graphics card.  If M is selected, the module will be called tdfx.
408d92d9c3aSDavid Herrmann
409d92d9c3aSDavid Herrmannconfig DRM_R128
410d92d9c3aSDavid Herrmann	tristate "ATI Rage 128"
411d92d9c3aSDavid Herrmann	depends on DRM && PCI
412d92d9c3aSDavid Herrmann	select FW_LOADER
413d92d9c3aSDavid Herrmann	help
414d92d9c3aSDavid Herrmann	  Choose this option if you have an ATI Rage 128 graphics card.  If M
415d92d9c3aSDavid Herrmann	  is selected, the module will be called r128.  AGP support for
416d92d9c3aSDavid Herrmann	  this card is strongly suggested (unless you have a PCI version).
417d92d9c3aSDavid Herrmann
418d92d9c3aSDavid Herrmannconfig DRM_I810
419d92d9c3aSDavid Herrmann	tristate "Intel I810"
420f86cf719SSebastian Andrzej Siewior	# !PREEMPTION because of missing ioctl locking
421dc25ace6SThomas Gleixner	depends on DRM && AGP && AGP_INTEL && (!PREEMPTION || BROKEN)
422d92d9c3aSDavid Herrmann	help
423d92d9c3aSDavid Herrmann	  Choose this option if you have an Intel I810 graphics card.  If M is
424d92d9c3aSDavid Herrmann	  selected, the module will be called i810.  AGP support is required
425d92d9c3aSDavid Herrmann	  for this driver to work.
426d92d9c3aSDavid Herrmann
427d92d9c3aSDavid Herrmannconfig DRM_MGA
428d92d9c3aSDavid Herrmann	tristate "Matrox g200/g400"
429d92d9c3aSDavid Herrmann	depends on DRM && PCI
430d92d9c3aSDavid Herrmann	select FW_LOADER
431d92d9c3aSDavid Herrmann	help
432d92d9c3aSDavid Herrmann	  Choose this option if you have a Matrox G200, G400 or G450 graphics
433d92d9c3aSDavid Herrmann	  card.  If M is selected, the module will be called mga.  AGP
434d92d9c3aSDavid Herrmann	  support is required for this driver to work.
435d92d9c3aSDavid Herrmann
436d92d9c3aSDavid Herrmannconfig DRM_SIS
437d92d9c3aSDavid Herrmann	tristate "SiS video cards"
438d92d9c3aSDavid Herrmann	depends on DRM && AGP
439d92d9c3aSDavid Herrmann	depends on FB_SIS || FB_SIS=n
440d92d9c3aSDavid Herrmann	help
441d92d9c3aSDavid Herrmann	  Choose this option if you have a SiS 630 or compatible video
442d92d9c3aSDavid Herrmann	  chipset. If M is selected the module will be called sis. AGP
443d92d9c3aSDavid Herrmann	  support is required for this driver to work.
444d92d9c3aSDavid Herrmann
445d92d9c3aSDavid Herrmannconfig DRM_VIA
446d92d9c3aSDavid Herrmann	tristate "Via unichrome video cards"
447d92d9c3aSDavid Herrmann	depends on DRM && PCI
448d92d9c3aSDavid Herrmann	help
449d92d9c3aSDavid Herrmann	  Choose this option if you have a Via unichrome or compatible video
450d92d9c3aSDavid Herrmann	  chipset. If M is selected the module will be called via.
451d92d9c3aSDavid Herrmann
452d92d9c3aSDavid Herrmannconfig DRM_SAVAGE
453d92d9c3aSDavid Herrmann	tristate "Savage video cards"
454d92d9c3aSDavid Herrmann	depends on DRM && PCI
455d92d9c3aSDavid Herrmann	help
456d92d9c3aSDavid Herrmann	  Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
457d92d9c3aSDavid Herrmann	  chipset. If M is selected the module will be called savage.
458d92d9c3aSDavid Herrmann
459d92d9c3aSDavid Herrmannendif # DRM_LEGACY
460a33d42ddSChris Wilson
4619b6c80beSRandy Dunlapconfig DRM_EXPORT_FOR_TESTS
4629b6c80beSRandy Dunlap	bool
4639b6c80beSRandy Dunlap
464341a0ffcSHans de Goede# Separate option because drm_panel_orientation_quirks.c is shared with fbdev
465341a0ffcSHans de Goedeconfig DRM_PANEL_ORIENTATION_QUIRKS
466341a0ffcSHans de Goede	tristate
467341a0ffcSHans de Goede
468a33d42ddSChris Wilsonconfig DRM_LIB_RANDOM
469a33d42ddSChris Wilson	bool
470a33d42ddSChris Wilson	default n
471