xref: /linux/drivers/gpu/drm/Kconfig (revision 6349120ddcbf6267cc4467ee01f852f7bd0cdd42)
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
18c0e09200SDave Airlie	help
19c0e09200SDave Airlie	  Kernel-level support for the Direct Rendering Infrastructure (DRI)
20c0e09200SDave Airlie	  introduced in XFree86 4.0. If you say Y here, you need to select
21c0e09200SDave Airlie	  the module that's right for your graphics card from the list below.
22c0e09200SDave Airlie	  These modules provide support for synchronization, security, and
23c0e09200SDave Airlie	  DMA transfers. Please see <http://dri.sourceforge.net/> for more
24c0e09200SDave Airlie	  details.  You should also select and configure AGP
25dcdb1674SJordan Crouse	  (/dev/agpgart) support if it is available for your platform.
26c0e09200SDave Airlie
27174102f4SNoralf Trønnesconfig DRM_MIPI_DBI
28174102f4SNoralf Trønnes	tristate
29174102f4SNoralf Trønnes	depends on DRM
30174102f4SNoralf Trønnes
31068a0023SAndrzej Hajdaconfig DRM_MIPI_DSI
32068a0023SAndrzej Hajda	bool
33068a0023SAndrzej Hajda	depends on DRM
34068a0023SAndrzej Hajda
35e94cb37bSRafael Antognolliconfig DRM_DP_AUX_CHARDEV
36e94cb37bSRafael Antognolli	bool "DRM DP AUX Interface"
37e94cb37bSRafael Antognolli	depends on DRM
38e94cb37bSRafael Antognolli	help
39e94cb37bSRafael Antognolli	  Choose this option to enable a /dev/drm_dp_auxN node that allows to
40e94cb37bSRafael Antognolli	  read and write values to arbitrary DPCD registers on the DP aux
41e94cb37bSRafael Antognolli	  channel.
42e94cb37bSRafael Antognolli
435705670dSChris Wilsonconfig DRM_DEBUG_MM
445705670dSChris Wilson	bool "Insert extra checks and debug info into the DRM range managers"
455705670dSChris Wilson	default n
46cd456f8dSChris Wilson	depends on DRM=y
474b514e10SChris Wilson	depends on STACKTRACE_SUPPORT
485705670dSChris Wilson	select STACKDEPOT
495705670dSChris Wilson	help
505705670dSChris Wilson	  Enable allocation tracking of memory manager and leak detection on
515705670dSChris Wilson	  shutdown.
525705670dSChris Wilson
535705670dSChris Wilson	  Recommended for driver developers only.
545705670dSChris Wilson
555705670dSChris Wilson	  If in doubt, say "N".
565705670dSChris Wilson
57*6349120dSChris Wilsonconfig DRM_EXPORT_FOR_TESTS
58*6349120dSChris Wilson	bool
59*6349120dSChris 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
67*6349120dSChris 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
8392b6f89fSDaniel Vetterconfig DRM_KMS_FB_HELPER
8492b6f89fSDaniel Vetter	bool
8592b6f89fSDaniel Vetter	depends on DRM_KMS_HELPER
8613a8195bSDave Airlie	select FB
876a108a14SDavid Rientjes	select FRAMEBUFFER_CONSOLE if !EXPERT
88bf5192edSDave Airlie	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
89cbb1a82eSArchit Taneja	select FB_SYS_FOPS
90742547b7SArchit Taneja	select FB_SYS_FILLRECT
91742547b7SArchit Taneja	select FB_SYS_COPYAREA
92742547b7SArchit Taneja	select FB_SYS_IMAGEBLIT
93742547b7SArchit Taneja	select FB_CFB_FILLRECT
94742547b7SArchit Taneja	select FB_CFB_COPYAREA
95742547b7SArchit Taneja	select FB_CFB_IMAGEBLIT
96eaa434deSNoralf Trønnes	select FB_DEFERRED_IO
9713a8195bSDave Airlie	help
9892b6f89fSDaniel Vetter	  FBDEV helpers for KMS drivers.
9913a8195bSDave Airlie
100a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION
101a03fdcb1SArchit Taneja	bool "Enable legacy fbdev support for your modesetting driver"
102a03fdcb1SArchit Taneja	depends on DRM
103a03fdcb1SArchit Taneja	select DRM_KMS_HELPER
104a03fdcb1SArchit Taneja	select DRM_KMS_FB_HELPER
105a03fdcb1SArchit Taneja	default y
106a03fdcb1SArchit Taneja	help
107a03fdcb1SArchit Taneja	  Choose this option if you have a need for the legacy fbdev
108a03fdcb1SArchit Taneja	  support. Note that this support also provides the linux console
109a03fdcb1SArchit Taneja	  support on top of your modesetting driver.
110a03fdcb1SArchit Taneja
111a03fdcb1SArchit Taneja	  If in doubt, say "Y".
112a03fdcb1SArchit Taneja
1135f152576SXinliang Liuconfig DRM_FBDEV_OVERALLOC
1145f152576SXinliang Liu	int "Overallocation of the fbdev buffer"
1155f152576SXinliang Liu	depends on DRM_FBDEV_EMULATION
1165f152576SXinliang Liu	default 100
1175f152576SXinliang Liu	help
1185f152576SXinliang Liu	  Defines the fbdev buffer overallocation in percent. Default
1195f152576SXinliang Liu	  is 100. Typical values for double buffering will be 200,
1205f152576SXinliang Liu	  triple buffering 300.
1215f152576SXinliang Liu
1224be9bd10SNeil Armstrongconfig DRM_FBDEV_LEAK_PHYS_SMEM
1234be9bd10SNeil Armstrong	bool "Shamelessly allow leaking of fbdev physical address (DANGEROUS)"
1244be9bd10SNeil Armstrong	depends on DRM_FBDEV_EMULATION && EXPERT
1254be9bd10SNeil Armstrong	default n
1264be9bd10SNeil Armstrong	help
1274be9bd10SNeil Armstrong	  In order to keep user-space compatibility, we want in certain
1284be9bd10SNeil Armstrong	  use-cases to keep leaking the fbdev physical address to the
1294be9bd10SNeil Armstrong	  user-space program handling the fbdev buffer.
1304be9bd10SNeil Armstrong	  This affects, not only, Amlogic, Allwinner or Rockchip devices
1314be9bd10SNeil Armstrong	  with ARM Mali GPUs using an userspace Blob.
1324be9bd10SNeil Armstrong	  This option is not supported by upstream developers and should be
1334be9bd10SNeil Armstrong	  removed as soon as possible and be considered as a broken and
1344be9bd10SNeil Armstrong	  legacy behaviour from a modern fbdev device driver.
1354be9bd10SNeil Armstrong
1364be9bd10SNeil Armstrong	  Please send any bug reports when using this to your proprietary
1374be9bd10SNeil Armstrong	  software vendor that requires this.
1384be9bd10SNeil Armstrong
1394be9bd10SNeil Armstrong	  If in doubt, say "N" or spread the word to your closed source
1404be9bd10SNeil Armstrong	  library vendor.
1414be9bd10SNeil Armstrong
142da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE
143da0df92bSCarsten Emde	bool "Allow to specify an EDID data set instead of probing for it"
14453fd40a9SJani Nikula	depends on DRM
145da0df92bSCarsten Emde	help
146da0df92bSCarsten Emde	  Say Y here, if you want to use EDID data to be loaded from the
147da0df92bSCarsten Emde	  /lib/firmware directory or one of the provided built-in
148da0df92bSCarsten Emde	  data sets. This may be necessary, if the graphics adapter or
149da0df92bSCarsten Emde	  monitor are unable to provide appropriate EDID data. Since this
150da0df92bSCarsten Emde	  feature is provided as a workaround for broken hardware, the
151da0df92bSCarsten Emde	  default case is N. Details and instructions how to build your own
152baa293e9SMauro Carvalho Chehab	  EDID data are given in Documentation/driver-api/edid.rst.
153da0df92bSCarsten Emde
1542c6d1fffSHans Verkuilconfig DRM_DP_CEC
1552c6d1fffSHans Verkuil	bool "Enable DisplayPort CEC-Tunneling-over-AUX HDMI support"
1562c6d1fffSHans Verkuil	select CEC_CORE
1572c6d1fffSHans Verkuil	help
1582c6d1fffSHans Verkuil	  Choose this option if you want to enable HDMI CEC support for
1592c6d1fffSHans Verkuil	  DisplayPort/USB-C to HDMI adapters.
1602c6d1fffSHans Verkuil
1612c6d1fffSHans Verkuil	  Note: not all adapters support this feature, and even for those
1622c6d1fffSHans Verkuil	  that do support this they often do not hook up the CEC pin.
1632c6d1fffSHans Verkuil
164ba4e7d97SThomas Hellstromconfig DRM_TTM
165771fe6b9SJerome Glisse	tristate
16662a0d98aSBenjamin Gaignard	depends on DRM && MMU
167ba4e7d97SThomas Hellstrom	help
168ba4e7d97SThomas Hellstrom	  GPU memory management subsystem for devices with multiple
169ba4e7d97SThomas Hellstrom	  GPU memory types. Will be enabled automatically if a device driver
170ba4e7d97SThomas Hellstrom	  uses it.
171ba4e7d97SThomas Hellstrom
17285438a8dSThomas Zimmermannconfig DRM_VRAM_HELPER
17385438a8dSThomas Zimmermann	tristate
17485438a8dSThomas Zimmermann	depends on DRM
17585438a8dSThomas Zimmermann	help
17685438a8dSThomas Zimmermann	  Helpers for VRAM memory management
17785438a8dSThomas Zimmermann
178ff540b76SGerd Hoffmannconfig DRM_TTM_HELPER
179ff540b76SGerd Hoffmann	tristate
180ff540b76SGerd Hoffmann	depends on DRM
181ff540b76SGerd Hoffmann	select DRM_TTM
182ff540b76SGerd Hoffmann	help
183ff540b76SGerd Hoffmann	  Helpers for ttm-based gem objects
184ff540b76SGerd Hoffmann
185b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER
186b9d47450SSascha Hauer	bool
187e1c7e324SChristoph Hellwig	depends on DRM
188b9d47450SSascha Hauer	help
189b9d47450SSascha Hauer	  Choose this if you need the GEM CMA helper functions
190b9d47450SSascha Hauer
1912e3b3c42SLars-Peter Clausenconfig DRM_KMS_CMA_HELPER
1922e3b3c42SLars-Peter Clausen	bool
193e1c7e324SChristoph Hellwig	depends on DRM
1942e3b3c42SLars-Peter Clausen	select DRM_GEM_CMA_HELPER
1952e3b3c42SLars-Peter Clausen	help
1962e3b3c42SLars-Peter Clausen	  Choose this if you need the KMS CMA helper functions
1972e3b3c42SLars-Peter Clausen
1982194a63aSNoralf Trønnesconfig DRM_GEM_SHMEM_HELPER
1992194a63aSNoralf Trønnes	bool
2002194a63aSNoralf Trønnes	depends on DRM
2012194a63aSNoralf Trønnes	help
2022194a63aSNoralf Trønnes	  Choose this if you need the GEM shmem helper functions
2032194a63aSNoralf Trønnes
20499c48e1eSBenjamin Gaignardconfig DRM_VM
20599c48e1eSBenjamin Gaignard	bool
2067e53c284SBenjamin Gaignard	depends on DRM && MMU
20799c48e1eSBenjamin Gaignard
2081b1f42d8SLucas Stachconfig DRM_SCHED
2091b1f42d8SLucas Stach	tristate
2101b1f42d8SLucas Stach	depends on DRM
2111b1f42d8SLucas Stach
2126504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig"
2136504d0d9SRob Clark
2148e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig"
2158e22d792SLiviu Dudau
216c0e09200SDave Airlieconfig DRM_RADEON
217c0e09200SDave Airlie	tristate "ATI Radeon"
218011cda58SBenjamin Gaignard	depends on DRM && PCI && MMU
21970967ab9SBen Hutchings	select FW_LOADER
220a0cdc649SDave Airlie        select DRM_KMS_HELPER
221a0cdc649SDave Airlie        select DRM_TTM
2225d9b7e2dSDave Airlie	select POWER_SUPPLY
22321a8122aSAlex Deucher	select HWMON
22414adc892SChristian König	select BACKLIGHT_CLASS_DEVICE
2250aea5e4aSAlex Deucher	select INTERVAL_TREE
226c0e09200SDave Airlie	help
227c0e09200SDave Airlie	  Choose this option if you have an ATI Radeon graphics card.  There
228c0e09200SDave Airlie	  are both PCI and AGP versions.  You don't need to choose this to
229c0e09200SDave Airlie	  run the Radeon in plain VGA mode.
230c0e09200SDave Airlie
231c0e09200SDave Airlie	  If M is selected, the module will be called radeon.
232c0e09200SDave Airlie
233f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig"
234f71d0187SDave Airlie
235d38ceaf9SAlex Deucherconfig DRM_AMDGPU
236d38ceaf9SAlex Deucher	tristate "AMD GPU"
237011cda58SBenjamin Gaignard	depends on DRM && PCI && MMU
238d38ceaf9SAlex Deucher	select FW_LOADER
239d38ceaf9SAlex Deucher        select DRM_KMS_HELPER
2401b1f42d8SLucas Stach	select DRM_SCHED
241d38ceaf9SAlex Deucher        select DRM_TTM
242d38ceaf9SAlex Deucher	select POWER_SUPPLY
243d38ceaf9SAlex Deucher	select HWMON
244d38ceaf9SAlex Deucher	select BACKLIGHT_CLASS_DEVICE
245d38ceaf9SAlex Deucher	select INTERVAL_TREE
246a2f14820SFelix Kuehling	select CHASH
247d38ceaf9SAlex Deucher	help
248d38ceaf9SAlex Deucher	  Choose this option if you have a recent AMD Radeon graphics card.
249d38ceaf9SAlex Deucher
250d38ceaf9SAlex Deucher	  If M is selected, the module will be called amdgpu.
251d38ceaf9SAlex Deucher
252d38ceaf9SAlex Deuchersource "drivers/gpu/drm/amd/amdgpu/Kconfig"
253a8fe58ceSMaruthi Bayyavarapu
254f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig"
255f3c93cbdSBen Skeggs
2564520f53aSDaniel Vettersource "drivers/gpu/drm/i915/Kconfig"
25799486b8eSJosh Triplett
258502e95c6SZach Reiznerconfig DRM_VGEM
259502e95c6SZach Reizner	tristate "Virtual GEM provider"
260502e95c6SZach Reizner	depends on DRM
261502e95c6SZach Reizner	help
262502e95c6SZach Reizner	  Choose this option to get a virtual graphics memory manager,
263502e95c6SZach Reizner	  as used by Mesa's software renderer for enhanced performance.
264502e95c6SZach Reizner	  If M is selected the module will be called vgem.
265502e95c6SZach Reizner
2661c7c5fd9SHaneen Mohammedconfig DRM_VKMS
267c91b007eSRodrigo Siqueira	tristate "Virtual KMS (EXPERIMENTAL)"
2681c7c5fd9SHaneen Mohammed	depends on DRM
2695ba57babSArnd Bergmann	select DRM_KMS_HELPER
270c91b007eSRodrigo Siqueira	default n
2711c7c5fd9SHaneen Mohammed	help
272c91b007eSRodrigo Siqueira	  Virtual Kernel Mode-Setting (VKMS) is used for testing or for
273c91b007eSRodrigo Siqueira	  running GPU in a headless machines. Choose this option to get
274c91b007eSRodrigo Siqueira	  a VKMS.
275c91b007eSRodrigo Siqueira
2761c7c5fd9SHaneen Mohammed	  If M is selected the module will be called vkms.
277502e95c6SZach Reizner
278848ee538SDave Airlieconfig DRM_ATI_PCIGART
279848ee538SDave Airlie        bool
280848ee538SDave Airlie
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
295f9aa76a8SDave Airliesource "drivers/gpu/drm/cirrus/Kconfig"
29651c13278SLaurent Pinchart
29796f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig"
29896f60e37SRussell King
2991a396789SBoris Brezillonsource "drivers/gpu/drm/atmel-hlcdc/Kconfig"
3001a396789SBoris Brezillon
3014bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig"
3024bf8e196SLaurent Pinchart
30351c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig"
304d8f4a9edSThierry Reding
3059026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig"
3069026e0d1SMaxime Ripard
3078bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig"
308ca18e142SDave Airlie
30916ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig"
310f64122c1SDave Airlie
311f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig"
312c8afe684SRob Clark
3130a6659bdSGerd Hoffmannsource "drivers/gpu/drm/bochs/Kconfig"
3140a6659bdSGerd Hoffmann
315dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig"
316dc5698e8SDave Airlie
317c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig"
318dee8268fSThierry Reding
319109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig"
320109eee2fSJianwei Wang
321dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig"
322aead40eaSThierry Reding
323b759012cSYannick Fertresource "drivers/gpu/drm/stm/Kconfig"
324b759012cSYannick Fertre
325aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig"
326f2cb3148SBenjamin Gaignard
327a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig"
328a33ee95fSThierry Reding
329f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig"
3304a488a7aSOded Gabbay
3316556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig"
332c8b75bcaSEric Anholt
33390b86fccSPaul Cercueilsource "drivers/gpu/drm/ingenic/Kconfig"
33490b86fccSPaul Cercueil
33557692c94SEric Anholtsource "drivers/gpu/drm/v3d/Kconfig"
33657692c94SEric Anholt
337c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig"
338a8c21a54SThe etnaviv authors
339a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig"
34051dacf20SCarlos Palminha
34151dacf20SCarlos Palminhasource "drivers/gpu/drm/arc/Kconfig"
34223e7b2abSXinliang Liu
34323e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig"
344119f5173SCK Hu
345119f5173SCK Husource "drivers/gpu/drm/mediatek/Kconfig"
346d92d9c3aSDavid Herrmann
3470a886f59SShawn Guosource "drivers/gpu/drm/zte/Kconfig"
3480a886f59SShawn Guo
34945d59d70SMarek Vasutsource "drivers/gpu/drm/mxsfb/Kconfig"
35045d59d70SMarek Vasut
351bbbe775eSNeil Armstrongsource "drivers/gpu/drm/meson/Kconfig"
352bbbe775eSNeil Armstrong
353043386a0SNoralf Trønnessource "drivers/gpu/drm/tiny/Kconfig"
354fa201ac2SNoralf Trønnes
355bed41005STom Cookseysource "drivers/gpu/drm/pl111/Kconfig"
356bed41005STom Cooksey
357179c02feSLinus Walleijsource "drivers/gpu/drm/tve200/Kconfig"
358179c02feSLinus Walleij
359c575b7eeSOleksandr Andrushchenkosource "drivers/gpu/drm/xen/Kconfig"
360c575b7eeSOleksandr Andrushchenko
361131abc56SHans de Goedesource "drivers/gpu/drm/vboxvideo/Kconfig"
362131abc56SHans de Goede
363a1d2a633SQiang Yusource "drivers/gpu/drm/lima/Kconfig"
364a1d2a633SQiang Yu
365f3ba9122SRob Herringsource "drivers/gpu/drm/panfrost/Kconfig"
366f3ba9122SRob Herring
3674f2a8f58SJoel Stanleysource "drivers/gpu/drm/aspeed/Kconfig"
3684f2a8f58SJoel Stanley
3695fc537bfSLinus Walleijsource "drivers/gpu/drm/mcde/Kconfig"
3705fc537bfSLinus Walleij
371d92d9c3aSDavid Herrmann# Keep legacy drivers last
372d92d9c3aSDavid Herrmann
373d92d9c3aSDavid Herrmannmenuconfig DRM_LEGACY
374d92d9c3aSDavid Herrmann	bool "Enable legacy drivers (DANGEROUS)"
3757e53c284SBenjamin Gaignard	depends on DRM && MMU
37699c48e1eSBenjamin Gaignard	select DRM_VM
377848ee538SDave Airlie	select DRM_ATI_PCIGART if PCI
378d92d9c3aSDavid Herrmann	help
379d92d9c3aSDavid Herrmann	  Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous
380d92d9c3aSDavid Herrmann	  APIs to user-space, which can be used to circumvent access
381d92d9c3aSDavid Herrmann	  restrictions and other security measures. For backwards compatibility
382d92d9c3aSDavid Herrmann	  those drivers are still available, but their use is highly
383d92d9c3aSDavid Herrmann	  inadvisable and might harm your system.
384d92d9c3aSDavid Herrmann
385d92d9c3aSDavid Herrmann	  You are recommended to use the safe modeset-only drivers instead, and
386d92d9c3aSDavid Herrmann	  perform 3D emulation in user-space.
387d92d9c3aSDavid Herrmann
388d92d9c3aSDavid Herrmann	  Unless you have strong reasons to go rogue, say "N".
389d92d9c3aSDavid Herrmann
390d92d9c3aSDavid Herrmannif DRM_LEGACY
391d92d9c3aSDavid Herrmann
392d92d9c3aSDavid Herrmannconfig DRM_TDFX
393d92d9c3aSDavid Herrmann	tristate "3dfx Banshee/Voodoo3+"
394d92d9c3aSDavid Herrmann	depends on DRM && PCI
395d92d9c3aSDavid Herrmann	help
396d92d9c3aSDavid Herrmann	  Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
397d92d9c3aSDavid Herrmann	  graphics card.  If M is selected, the module will be called tdfx.
398d92d9c3aSDavid Herrmann
399d92d9c3aSDavid Herrmannconfig DRM_R128
400d92d9c3aSDavid Herrmann	tristate "ATI Rage 128"
401d92d9c3aSDavid Herrmann	depends on DRM && PCI
402d92d9c3aSDavid Herrmann	select FW_LOADER
403d92d9c3aSDavid Herrmann	help
404d92d9c3aSDavid Herrmann	  Choose this option if you have an ATI Rage 128 graphics card.  If M
405d92d9c3aSDavid Herrmann	  is selected, the module will be called r128.  AGP support for
406d92d9c3aSDavid Herrmann	  this card is strongly suggested (unless you have a PCI version).
407d92d9c3aSDavid Herrmann
408d92d9c3aSDavid Herrmannconfig DRM_I810
409d92d9c3aSDavid Herrmann	tristate "Intel I810"
410d92d9c3aSDavid Herrmann	# !PREEMPT because of missing ioctl locking
411dc25ace6SThomas Gleixner	depends on DRM && AGP && AGP_INTEL && (!PREEMPTION || BROKEN)
412d92d9c3aSDavid Herrmann	help
413d92d9c3aSDavid Herrmann	  Choose this option if you have an Intel I810 graphics card.  If M is
414d92d9c3aSDavid Herrmann	  selected, the module will be called i810.  AGP support is required
415d92d9c3aSDavid Herrmann	  for this driver to work.
416d92d9c3aSDavid Herrmann
417d92d9c3aSDavid Herrmannconfig DRM_MGA
418d92d9c3aSDavid Herrmann	tristate "Matrox g200/g400"
419d92d9c3aSDavid Herrmann	depends on DRM && PCI
420d92d9c3aSDavid Herrmann	select FW_LOADER
421d92d9c3aSDavid Herrmann	help
422d92d9c3aSDavid Herrmann	  Choose this option if you have a Matrox G200, G400 or G450 graphics
423d92d9c3aSDavid Herrmann	  card.  If M is selected, the module will be called mga.  AGP
424d92d9c3aSDavid Herrmann	  support is required for this driver to work.
425d92d9c3aSDavid Herrmann
426d92d9c3aSDavid Herrmannconfig DRM_SIS
427d92d9c3aSDavid Herrmann	tristate "SiS video cards"
428d92d9c3aSDavid Herrmann	depends on DRM && AGP
429d92d9c3aSDavid Herrmann	depends on FB_SIS || FB_SIS=n
430d92d9c3aSDavid Herrmann	help
431d92d9c3aSDavid Herrmann	  Choose this option if you have a SiS 630 or compatible video
432d92d9c3aSDavid Herrmann	  chipset. If M is selected the module will be called sis. AGP
433d92d9c3aSDavid Herrmann	  support is required for this driver to work.
434d92d9c3aSDavid Herrmann
435d92d9c3aSDavid Herrmannconfig DRM_VIA
436d92d9c3aSDavid Herrmann	tristate "Via unichrome video cards"
437d92d9c3aSDavid Herrmann	depends on DRM && PCI
438d92d9c3aSDavid Herrmann	help
439d92d9c3aSDavid Herrmann	  Choose this option if you have a Via unichrome or compatible video
440d92d9c3aSDavid Herrmann	  chipset. If M is selected the module will be called via.
441d92d9c3aSDavid Herrmann
442d92d9c3aSDavid Herrmannconfig DRM_SAVAGE
443d92d9c3aSDavid Herrmann	tristate "Savage video cards"
444d92d9c3aSDavid Herrmann	depends on DRM && PCI
445d92d9c3aSDavid Herrmann	help
446d92d9c3aSDavid Herrmann	  Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
447d92d9c3aSDavid Herrmann	  chipset. If M is selected the module will be called savage.
448d92d9c3aSDavid Herrmann
449d92d9c3aSDavid Herrmannendif # DRM_LEGACY
450a33d42ddSChris Wilson
451341a0ffcSHans de Goede# Separate option because drm_panel_orientation_quirks.c is shared with fbdev
452341a0ffcSHans de Goedeconfig DRM_PANEL_ORIENTATION_QUIRKS
453341a0ffcSHans de Goede	tristate
454341a0ffcSHans de Goede
455a33d42ddSChris Wilsonconfig DRM_LIB_RANDOM
456a33d42ddSChris Wilson	bool
457a33d42ddSChris Wilson	default n
458