xref: /linux/drivers/gpu/drm/Kconfig (revision 23e7b2ab9a8ff5653e8140248a494c3f3171dce3)
1c0e09200SDave Airlie#
2c0e09200SDave Airlie# Drm device configuration
3c0e09200SDave Airlie#
4c0e09200SDave Airlie# This driver provides support for the
5c0e09200SDave Airlie# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
6c0e09200SDave Airlie#
7c0e09200SDave Airliemenuconfig DRM
8c0e09200SDave Airlie	tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
9cc6a36f2SGeert Uytterhoeven	depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU && HAS_DMA
1010a85120SThierry Reding	select HDMI
11eaf99c74SChris Wilson	select FB_CMDLINE
1257a6297eSDave Airlie	select I2C
1357a6297eSDave Airlie	select I2C_ALGOBIT
143248877eSDave Airlie	select DMA_SHARED_BUFFER
15c0e09200SDave Airlie	help
16c0e09200SDave Airlie	  Kernel-level support for the Direct Rendering Infrastructure (DRI)
17c0e09200SDave Airlie	  introduced in XFree86 4.0. If you say Y here, you need to select
18c0e09200SDave Airlie	  the module that's right for your graphics card from the list below.
19c0e09200SDave Airlie	  These modules provide support for synchronization, security, and
20c0e09200SDave Airlie	  DMA transfers. Please see <http://dri.sourceforge.net/> for more
21c0e09200SDave Airlie	  details.  You should also select and configure AGP
22dcdb1674SJordan Crouse	  (/dev/agpgart) support if it is available for your platform.
23c0e09200SDave Airlie
24068a0023SAndrzej Hajdaconfig DRM_MIPI_DSI
25068a0023SAndrzej Hajda	bool
26068a0023SAndrzej Hajda	depends on DRM
27068a0023SAndrzej Hajda
28e94cb37bSRafael Antognolliconfig DRM_DP_AUX_CHARDEV
29e94cb37bSRafael Antognolli	bool "DRM DP AUX Interface"
30e94cb37bSRafael Antognolli	depends on DRM
31e94cb37bSRafael Antognolli	help
32e94cb37bSRafael Antognolli	  Choose this option to enable a /dev/drm_dp_auxN node that allows to
33e94cb37bSRafael Antognolli	  read and write values to arbitrary DPCD registers on the DP aux
34e94cb37bSRafael Antognolli	  channel.
35e94cb37bSRafael Antognolli
366fcefd56SDave Airlieconfig DRM_KMS_HELPER
3713a8195bSDave Airlie	tristate
3813a8195bSDave Airlie	depends on DRM
3992b6f89fSDaniel Vetter	help
4092b6f89fSDaniel Vetter	  CRTC helpers for KMS drivers.
4192b6f89fSDaniel Vetter
4292b6f89fSDaniel Vetterconfig DRM_KMS_FB_HELPER
4392b6f89fSDaniel Vetter	bool
4492b6f89fSDaniel Vetter	depends on DRM_KMS_HELPER
4513a8195bSDave Airlie	select FB
466a108a14SDavid Rientjes	select FRAMEBUFFER_CONSOLE if !EXPERT
47bf5192edSDave Airlie	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
48cbb1a82eSArchit Taneja	select FB_SYS_FOPS
49742547b7SArchit Taneja	select FB_SYS_FILLRECT
50742547b7SArchit Taneja	select FB_SYS_COPYAREA
51742547b7SArchit Taneja	select FB_SYS_IMAGEBLIT
52742547b7SArchit Taneja	select FB_CFB_FILLRECT
53742547b7SArchit Taneja	select FB_CFB_COPYAREA
54742547b7SArchit Taneja	select FB_CFB_IMAGEBLIT
5513a8195bSDave Airlie	help
5692b6f89fSDaniel Vetter	  FBDEV helpers for KMS drivers.
5713a8195bSDave Airlie
58a03fdcb1SArchit Tanejaconfig DRM_FBDEV_EMULATION
59a03fdcb1SArchit Taneja	bool "Enable legacy fbdev support for your modesetting driver"
60a03fdcb1SArchit Taneja	depends on DRM
61a03fdcb1SArchit Taneja	select DRM_KMS_HELPER
62a03fdcb1SArchit Taneja	select DRM_KMS_FB_HELPER
63a03fdcb1SArchit Taneja	default y
64a03fdcb1SArchit Taneja	help
65a03fdcb1SArchit Taneja	  Choose this option if you have a need for the legacy fbdev
66a03fdcb1SArchit Taneja	  support. Note that this support also provides the linux console
67a03fdcb1SArchit Taneja	  support on top of your modesetting driver.
68a03fdcb1SArchit Taneja
69a03fdcb1SArchit Taneja	  If in doubt, say "Y".
70a03fdcb1SArchit Taneja
71da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE
72da0df92bSCarsten Emde	bool "Allow to specify an EDID data set instead of probing for it"
73da0df92bSCarsten Emde	depends on DRM_KMS_HELPER
74da0df92bSCarsten Emde	help
75da0df92bSCarsten Emde	  Say Y here, if you want to use EDID data to be loaded from the
76da0df92bSCarsten Emde	  /lib/firmware directory or one of the provided built-in
77da0df92bSCarsten Emde	  data sets. This may be necessary, if the graphics adapter or
78da0df92bSCarsten Emde	  monitor are unable to provide appropriate EDID data. Since this
79da0df92bSCarsten Emde	  feature is provided as a workaround for broken hardware, the
80da0df92bSCarsten Emde	  default case is N. Details and instructions how to build your own
81da0df92bSCarsten Emde	  EDID data are given in Documentation/EDID/HOWTO.txt.
82da0df92bSCarsten Emde
83ba4e7d97SThomas Hellstromconfig DRM_TTM
84771fe6b9SJerome Glisse	tristate
85ba4e7d97SThomas Hellstrom	depends on DRM
86ba4e7d97SThomas Hellstrom	help
87ba4e7d97SThomas Hellstrom	  GPU memory management subsystem for devices with multiple
88ba4e7d97SThomas Hellstrom	  GPU memory types. Will be enabled automatically if a device driver
89ba4e7d97SThomas Hellstrom	  uses it.
90ba4e7d97SThomas Hellstrom
91b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER
92b9d47450SSascha Hauer	bool
93e1c7e324SChristoph Hellwig	depends on DRM
94b9d47450SSascha Hauer	help
95b9d47450SSascha Hauer	  Choose this if you need the GEM CMA helper functions
96b9d47450SSascha Hauer
972e3b3c42SLars-Peter Clausenconfig DRM_KMS_CMA_HELPER
982e3b3c42SLars-Peter Clausen	bool
99e1c7e324SChristoph Hellwig	depends on DRM
1002e3b3c42SLars-Peter Clausen	select DRM_GEM_CMA_HELPER
10192b6f89fSDaniel Vetter	select DRM_KMS_FB_HELPER
1022e3b3c42SLars-Peter Clausen	select FB_SYS_FILLRECT
1032e3b3c42SLars-Peter Clausen	select FB_SYS_COPYAREA
1042e3b3c42SLars-Peter Clausen	select FB_SYS_IMAGEBLIT
1052e3b3c42SLars-Peter Clausen	help
1062e3b3c42SLars-Peter Clausen	  Choose this if you need the KMS CMA helper functions
1072e3b3c42SLars-Peter Clausen
1086504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig"
1096504d0d9SRob Clark
110c0e09200SDave Airlieconfig DRM_TDFX
111c0e09200SDave Airlie	tristate "3dfx Banshee/Voodoo3+"
112c0e09200SDave Airlie	depends on DRM && PCI
113c0e09200SDave Airlie	help
114c0e09200SDave Airlie	  Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
115c0e09200SDave Airlie	  graphics card.  If M is selected, the module will be called tdfx.
116c0e09200SDave Airlie
1178e22d792SLiviu Dudausource "drivers/gpu/drm/arm/Kconfig"
1188e22d792SLiviu Dudau
119c0e09200SDave Airlieconfig DRM_R128
120c0e09200SDave Airlie	tristate "ATI Rage 128"
121c0e09200SDave Airlie	depends on DRM && PCI
12252f97df5SBen Hutchings	select FW_LOADER
123c0e09200SDave Airlie	help
124c0e09200SDave Airlie	  Choose this option if you have an ATI Rage 128 graphics card.  If M
125c0e09200SDave Airlie	  is selected, the module will be called r128.  AGP support for
126c0e09200SDave Airlie	  this card is strongly suggested (unless you have a PCI version).
127c0e09200SDave Airlie
128c0e09200SDave Airlieconfig DRM_RADEON
129c0e09200SDave Airlie	tristate "ATI Radeon"
130c0e09200SDave Airlie	depends on DRM && PCI
131771fe6b9SJerome Glisse	select FB_CFB_FILLRECT
132771fe6b9SJerome Glisse	select FB_CFB_COPYAREA
133771fe6b9SJerome Glisse	select FB_CFB_IMAGEBLIT
13470967ab9SBen Hutchings	select FW_LOADER
135a0cdc649SDave Airlie        select DRM_KMS_HELPER
13692b6f89fSDaniel Vetter	select DRM_KMS_FB_HELPER
137a0cdc649SDave Airlie        select DRM_TTM
1385d9b7e2dSDave Airlie	select POWER_SUPPLY
13921a8122aSAlex Deucher	select HWMON
14014adc892SChristian König	select BACKLIGHT_CLASS_DEVICE
14133610527SThierry Reding	select BACKLIGHT_LCD_SUPPORT
1420aea5e4aSAlex Deucher	select INTERVAL_TREE
143c0e09200SDave Airlie	help
144c0e09200SDave Airlie	  Choose this option if you have an ATI Radeon graphics card.  There
145c0e09200SDave Airlie	  are both PCI and AGP versions.  You don't need to choose this to
146c0e09200SDave Airlie	  run the Radeon in plain VGA mode.
147c0e09200SDave Airlie
148c0e09200SDave Airlie	  If M is selected, the module will be called radeon.
149c0e09200SDave Airlie
150f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig"
151f71d0187SDave Airlie
152d38ceaf9SAlex Deucherconfig DRM_AMDGPU
153d38ceaf9SAlex Deucher	tristate "AMD GPU"
154d38ceaf9SAlex Deucher	depends on DRM && PCI
155d38ceaf9SAlex Deucher	select FB_CFB_FILLRECT
156d38ceaf9SAlex Deucher	select FB_CFB_COPYAREA
157d38ceaf9SAlex Deucher	select FB_CFB_IMAGEBLIT
158d38ceaf9SAlex Deucher	select FW_LOADER
159d38ceaf9SAlex Deucher        select DRM_KMS_HELPER
160d38ceaf9SAlex Deucher	select DRM_KMS_FB_HELPER
161d38ceaf9SAlex Deucher        select DRM_TTM
162d38ceaf9SAlex Deucher	select POWER_SUPPLY
163d38ceaf9SAlex Deucher	select HWMON
164d38ceaf9SAlex Deucher	select BACKLIGHT_CLASS_DEVICE
165b325a789SThierry Reding	select BACKLIGHT_LCD_SUPPORT
166d38ceaf9SAlex Deucher	select INTERVAL_TREE
167d38ceaf9SAlex Deucher	help
168d38ceaf9SAlex Deucher	  Choose this option if you have a recent AMD Radeon graphics card.
169d38ceaf9SAlex Deucher
170d38ceaf9SAlex Deucher	  If M is selected, the module will be called amdgpu.
171d38ceaf9SAlex Deucher
172d38ceaf9SAlex Deuchersource "drivers/gpu/drm/amd/amdgpu/Kconfig"
1731f7371b2SAlex Deuchersource "drivers/gpu/drm/amd/powerplay/Kconfig"
174d38ceaf9SAlex Deucher
175a8fe58ceSMaruthi Bayyavarapusource "drivers/gpu/drm/amd/acp/Kconfig"
176a8fe58ceSMaruthi Bayyavarapu
177f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig"
178f3c93cbdSBen Skeggs
179c0e09200SDave Airlieconfig DRM_I810
180c0e09200SDave Airlie	tristate "Intel I810"
1811f692a14SArnd Bergmann	# !PREEMPT because of missing ioctl locking
1821f692a14SArnd Bergmann	depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN)
183c0e09200SDave Airlie	help
184c0e09200SDave Airlie	  Choose this option if you have an Intel I810 graphics card.  If M is
185c0e09200SDave Airlie	  selected, the module will be called i810.  AGP support is required
186c0e09200SDave Airlie	  for this driver to work.
187c0e09200SDave Airlie
1884520f53aSDaniel Vettersource "drivers/gpu/drm/i915/Kconfig"
18999486b8eSJosh Triplett
190c0e09200SDave Airlieconfig DRM_MGA
191c0e09200SDave Airlie	tristate "Matrox g200/g400"
192f5f05c8aSDave Airlie	depends on DRM && PCI
193ece2be79SBen Hutchings	select FW_LOADER
194c0e09200SDave Airlie	help
195c0e09200SDave Airlie	  Choose this option if you have a Matrox G200, G400 or G450 graphics
196c0e09200SDave Airlie	  card.  If M is selected, the module will be called mga.  AGP
197c0e09200SDave Airlie	  support is required for this driver to work.
198c0e09200SDave Airlie
199c0e09200SDave Airlieconfig DRM_SIS
200c0e09200SDave Airlie	tristate "SiS video cards"
201c0e09200SDave Airlie	depends on DRM && AGP
202dfcf96d0SAdrian Bunk	depends on FB_SIS || FB_SIS=n
203c0e09200SDave Airlie	help
204c0e09200SDave Airlie	  Choose this option if you have a SiS 630 or compatible video
205c0e09200SDave Airlie          chipset. If M is selected the module will be called sis. AGP
206c0e09200SDave Airlie          support is required for this driver to work.
207c0e09200SDave Airlie
208c0e09200SDave Airlieconfig DRM_VIA
209c0e09200SDave Airlie	tristate "Via unichrome video cards"
210f5f05c8aSDave Airlie	depends on DRM && PCI
211c0e09200SDave Airlie	help
212c0e09200SDave Airlie	  Choose this option if you have a Via unichrome or compatible video
213c0e09200SDave Airlie	  chipset. If M is selected the module will be called via.
214c0e09200SDave Airlie
215c0e09200SDave Airlieconfig DRM_SAVAGE
216c0e09200SDave Airlie	tristate "Savage video cards"
217f5f05c8aSDave Airlie	depends on DRM && PCI
218c0e09200SDave Airlie	help
219c0e09200SDave Airlie	  Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
220c0e09200SDave Airlie	  chipset. If M is selected the module will be called savage.
2211c248b7dSInki Dae
222502e95c6SZach Reiznerconfig DRM_VGEM
223502e95c6SZach Reizner	tristate "Virtual GEM provider"
224502e95c6SZach Reizner	depends on DRM
225502e95c6SZach Reizner	help
226502e95c6SZach Reizner	  Choose this option to get a virtual graphics memory manager,
227502e95c6SZach Reizner	  as used by Mesa's software renderer for enhanced performance.
228502e95c6SZach Reizner	  If M is selected the module will be called vgem.
229502e95c6SZach Reizner
230502e95c6SZach Reizner
2311c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig"
2325a7b74beSThomas Hellstrom
2332048e328SMark Yaosource "drivers/gpu/drm/rockchip/Kconfig"
2342048e328SMark Yao
2355a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig"
23691c75492SAlan Cox
23791c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig"
23891c75492SAlan Cox
2395320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig"
240312fec14SDave Airlie
241312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig"
242312fec14SDave Airlie
243414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig"
244f9aa76a8SDave Airlie
245f9aa76a8SDave Airliesource "drivers/gpu/drm/cirrus/Kconfig"
24651c13278SLaurent Pinchart
24796f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig"
24896f60e37SRussell King
2491a396789SBoris Brezillonsource "drivers/gpu/drm/atmel-hlcdc/Kconfig"
2501a396789SBoris Brezillon
2514bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig"
2524bf8e196SLaurent Pinchart
25351c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig"
254d8f4a9edSThierry Reding
2559026e0d1SMaxime Ripardsource "drivers/gpu/drm/sun4i/Kconfig"
2569026e0d1SMaxime Ripard
2578bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig"
258ca18e142SDave Airlie
25916ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig"
260f64122c1SDave Airlie
261f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig"
262c8afe684SRob Clark
2630a6659bdSGerd Hoffmannsource "drivers/gpu/drm/bochs/Kconfig"
2640a6659bdSGerd Hoffmann
265dc5698e8SDave Airliesource "drivers/gpu/drm/virtio/Kconfig"
266dc5698e8SDave Airlie
267c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig"
268dee8268fSThierry Reding
269109eee2fSJianwei Wangsource "drivers/gpu/drm/fsl-dcu/Kconfig"
270109eee2fSJianwei Wang
271dee8268fSThierry Redingsource "drivers/gpu/drm/tegra/Kconfig"
272aead40eaSThierry Reding
273aead40eaSThierry Redingsource "drivers/gpu/drm/panel/Kconfig"
274f2cb3148SBenjamin Gaignard
275a33ee95fSThierry Redingsource "drivers/gpu/drm/bridge/Kconfig"
276a33ee95fSThierry Reding
277f2cb3148SBenjamin Gaignardsource "drivers/gpu/drm/sti/Kconfig"
2784a488a7aSOded Gabbay
2794a488a7aSOded Gabbaysource "drivers/gpu/drm/amd/amdkfd/Kconfig"
2806556f7f8SPhilipp Zabel
2816556f7f8SPhilipp Zabelsource "drivers/gpu/drm/imx/Kconfig"
282c8b75bcaSEric Anholt
283c8b75bcaSEric Anholtsource "drivers/gpu/drm/vc4/Kconfig"
284a8c21a54SThe etnaviv authors
285a8c21a54SThe etnaviv authorssource "drivers/gpu/drm/etnaviv/Kconfig"
28651dacf20SCarlos Palminha
28751dacf20SCarlos Palminhasource "drivers/gpu/drm/arc/Kconfig"
288*23e7b2abSXinliang Liu
289*23e7b2abSXinliang Liusource "drivers/gpu/drm/hisilicon/Kconfig"
290