xref: /linux/drivers/gpu/drm/Kconfig (revision 96f60e37dc66091bde8d5de136ff6fda09f2d799)
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
1157a6297eSDave Airlie	select I2C
1257a6297eSDave Airlie	select I2C_ALGOBIT
133248877eSDave Airlie	select DMA_SHARED_BUFFER
14c0e09200SDave Airlie	help
15c0e09200SDave Airlie	  Kernel-level support for the Direct Rendering Infrastructure (DRI)
16c0e09200SDave Airlie	  introduced in XFree86 4.0. If you say Y here, you need to select
17c0e09200SDave Airlie	  the module that's right for your graphics card from the list below.
18c0e09200SDave Airlie	  These modules provide support for synchronization, security, and
19c0e09200SDave Airlie	  DMA transfers. Please see <http://dri.sourceforge.net/> for more
20c0e09200SDave Airlie	  details.  You should also select and configure AGP
21dcdb1674SJordan Crouse	  (/dev/agpgart) support if it is available for your platform.
22c0e09200SDave Airlie
239c1dfc55SDave Airlieconfig DRM_USB
249c1dfc55SDave Airlie	tristate
259c1dfc55SDave Airlie	depends on DRM
2695ca19cfSSedat Dilek	depends on USB_SUPPORT && USB_ARCH_HAS_HCD
279c1dfc55SDave Airlie	select USB
289c1dfc55SDave Airlie
296fcefd56SDave Airlieconfig DRM_KMS_HELPER
3013a8195bSDave Airlie	tristate
3113a8195bSDave Airlie	depends on DRM
3213a8195bSDave Airlie	select FB
336a108a14SDavid Rientjes	select FRAMEBUFFER_CONSOLE if !EXPERT
34bf5192edSDave Airlie	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
3513a8195bSDave Airlie	help
366fcefd56SDave Airlie	  FB and CRTC helpers for KMS drivers.
3713a8195bSDave Airlie
38da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE
39da0df92bSCarsten Emde	bool "Allow to specify an EDID data set instead of probing for it"
40da0df92bSCarsten Emde	depends on DRM_KMS_HELPER
41da0df92bSCarsten Emde	help
42da0df92bSCarsten Emde	  Say Y here, if you want to use EDID data to be loaded from the
43da0df92bSCarsten Emde	  /lib/firmware directory or one of the provided built-in
44da0df92bSCarsten Emde	  data sets. This may be necessary, if the graphics adapter or
45da0df92bSCarsten Emde	  monitor are unable to provide appropriate EDID data. Since this
46da0df92bSCarsten Emde	  feature is provided as a workaround for broken hardware, the
47da0df92bSCarsten Emde	  default case is N. Details and instructions how to build your own
48da0df92bSCarsten Emde	  EDID data are given in Documentation/EDID/HOWTO.txt.
49da0df92bSCarsten Emde
50ba4e7d97SThomas Hellstromconfig DRM_TTM
51771fe6b9SJerome Glisse	tristate
52ba4e7d97SThomas Hellstrom	depends on DRM
53ba4e7d97SThomas Hellstrom	help
54ba4e7d97SThomas Hellstrom	  GPU memory management subsystem for devices with multiple
55ba4e7d97SThomas Hellstrom	  GPU memory types. Will be enabled automatically if a device driver
56ba4e7d97SThomas Hellstrom	  uses it.
57ba4e7d97SThomas Hellstrom
58b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER
59b9d47450SSascha Hauer	bool
60b9d47450SSascha Hauer	depends on DRM
61b9d47450SSascha Hauer	help
62b9d47450SSascha Hauer	  Choose this if you need the GEM CMA helper functions
63b9d47450SSascha Hauer
642e3b3c42SLars-Peter Clausenconfig DRM_KMS_CMA_HELPER
652e3b3c42SLars-Peter Clausen	bool
662e3b3c42SLars-Peter Clausen	select DRM_GEM_CMA_HELPER
672e3b3c42SLars-Peter Clausen	select FB_SYS_FILLRECT
682e3b3c42SLars-Peter Clausen	select FB_SYS_COPYAREA
692e3b3c42SLars-Peter Clausen	select FB_SYS_IMAGEBLIT
702e3b3c42SLars-Peter Clausen	help
712e3b3c42SLars-Peter Clausen	  Choose this if you need the KMS CMA helper functions
722e3b3c42SLars-Peter Clausen
736504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig"
746504d0d9SRob Clark
75c0e09200SDave Airlieconfig DRM_TDFX
76c0e09200SDave Airlie	tristate "3dfx Banshee/Voodoo3+"
77c0e09200SDave Airlie	depends on DRM && PCI
78c0e09200SDave Airlie	help
79c0e09200SDave Airlie	  Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
80c0e09200SDave Airlie	  graphics card.  If M is selected, the module will be called tdfx.
81c0e09200SDave Airlie
82c0e09200SDave Airlieconfig DRM_R128
83c0e09200SDave Airlie	tristate "ATI Rage 128"
84c0e09200SDave Airlie	depends on DRM && PCI
8552f97df5SBen Hutchings	select FW_LOADER
86c0e09200SDave Airlie	help
87c0e09200SDave Airlie	  Choose this option if you have an ATI Rage 128 graphics card.  If M
88c0e09200SDave Airlie	  is selected, the module will be called r128.  AGP support for
89c0e09200SDave Airlie	  this card is strongly suggested (unless you have a PCI version).
90c0e09200SDave Airlie
91c0e09200SDave Airlieconfig DRM_RADEON
92c0e09200SDave Airlie	tristate "ATI Radeon"
93c0e09200SDave Airlie	depends on DRM && PCI
94771fe6b9SJerome Glisse	select FB_CFB_FILLRECT
95771fe6b9SJerome Glisse	select FB_CFB_COPYAREA
96771fe6b9SJerome Glisse	select FB_CFB_IMAGEBLIT
9770967ab9SBen Hutchings	select FW_LOADER
98a0cdc649SDave Airlie        select DRM_KMS_HELPER
99a0cdc649SDave Airlie        select DRM_TTM
1005d9b7e2dSDave Airlie	select POWER_SUPPLY
10121a8122aSAlex Deucher	select HWMON
10214adc892SChristian König	select BACKLIGHT_CLASS_DEVICE
103c0e09200SDave Airlie	help
104c0e09200SDave Airlie	  Choose this option if you have an ATI Radeon graphics card.  There
105c0e09200SDave Airlie	  are both PCI and AGP versions.  You don't need to choose this to
106c0e09200SDave Airlie	  run the Radeon in plain VGA mode.
107c0e09200SDave Airlie
108c0e09200SDave Airlie	  If M is selected, the module will be called radeon.
109c0e09200SDave Airlie
110f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig"
111f71d0187SDave Airlie
112f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig"
113f3c93cbdSBen Skeggs
114c0e09200SDave Airlieconfig DRM_I810
115c0e09200SDave Airlie	tristate "Intel I810"
1161f692a14SArnd Bergmann	# !PREEMPT because of missing ioctl locking
1171f692a14SArnd Bergmann	depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN)
118c0e09200SDave Airlie	help
119c0e09200SDave Airlie	  Choose this option if you have an Intel I810 graphics card.  If M is
120c0e09200SDave Airlie	  selected, the module will be called i810.  AGP support is required
121c0e09200SDave Airlie	  for this driver to work.
122c0e09200SDave Airlie
123c0e09200SDave Airlieconfig DRM_I915
1247f506847SArnd Bergmann	tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
1257f506847SArnd Bergmann	depends on DRM
1267f506847SArnd Bergmann	depends on AGP
1278c52da50SEric Anholt	depends on AGP_INTEL
128f7ab9b40SChris Wilson	# we need shmfs for the swappable backing store, and in particular
129f7ab9b40SChris Wilson	# the shmem_readpage() which depends upon tmpfs
130ca9ab100SChris Wilson	select SHMEM
131f7ab9b40SChris Wilson	select TMPFS
1326fcefd56SDave Airlie	select DRM_KMS_HELPER
13306d9f33cSEric Anholt	select FB_CFB_FILLRECT
13406d9f33cSEric Anholt	select FB_CFB_COPYAREA
13506d9f33cSEric Anholt	select FB_CFB_IMAGEBLIT
13631db5645SLen Brown	# i915 depends on ACPI_VIDEO when ACPI is enabled
13731db5645SLen Brown	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
13844a1dabfSRandy Dunlap	select BACKLIGHT_LCD_SUPPORT if ACPI
13931db5645SLen Brown	select BACKLIGHT_CLASS_DEVICE if ACPI
140cbf15bdbSKonstantin Khlebnikov	select VIDEO_OUTPUT_CONTROL if ACPI
14131db5645SLen Brown	select INPUT if ACPI
1421107276cSMaarten Lankhorst	select THERMAL if ACPI
14331db5645SLen Brown	select ACPI_VIDEO if ACPI
144c1c7af60SJesse Barnes	select ACPI_BUTTON if ACPI
145c0e09200SDave Airlie	help
1467f506847SArnd Bergmann	  Choose this option if you have a system that has "Intel Graphics
1477f506847SArnd Bergmann	  Media Accelerator" or "HD Graphics" integrated graphics,
1487f506847SArnd Bergmann	  including 830M, 845G, 852GM, 855GM, 865G, 915G, 945G, 965G,
1497f506847SArnd Bergmann	  G35, G41, G43, G45 chipsets and Celeron, Pentium, Core i3,
1507f506847SArnd Bergmann	  Core i5, Core i7 as well as Atom CPUs with integrated graphics.
1517f506847SArnd Bergmann	  If M is selected, the module will be called i915.  AGP support
1527f506847SArnd Bergmann	  is required for this driver to work. This driver is used by
1537f506847SArnd Bergmann	  the Intel driver in X.org 6.8 and XFree86 4.4 and above. It
1547f506847SArnd Bergmann	  replaces the older i830 module that supported a subset of the
1557f506847SArnd Bergmann	  hardware in older X.org releases.
1567f506847SArnd Bergmann
1577f506847SArnd Bergmann	  Note that the older i810/i815 chipsets require the use of the
1587f506847SArnd Bergmann	  i810 driver instead, and the Atom z5xx series has an entirely
1597f506847SArnd Bergmann	  different implementation.
160c0e09200SDave Airlie
16179e53945SJesse Barnesconfig DRM_I915_KMS
16279e53945SJesse Barnes	bool "Enable modesetting on intel by default"
16379e53945SJesse Barnes	depends on DRM_I915
16479e53945SJesse Barnes	help
16579e53945SJesse Barnes	  Choose this option if you want kernel modesetting enabled by default,
16679e53945SJesse Barnes	  and you have a new enough userspace to support this. Running old
16779e53945SJesse Barnes	  userspaces with this enabled will cause pain.  Note that this causes
16879e53945SJesse Barnes	  the driver to bind to PCI devices, which precludes loading things
16979e53945SJesse Barnes	  like intelfb.
17079e53945SJesse Barnes
17199486b8eSJosh Triplettconfig DRM_I915_PRELIMINARY_HW_SUPPORT
17299486b8eSJosh Triplett	bool "Enable preliminary support for prerelease Intel hardware by default"
17399486b8eSJosh Triplett	depends on DRM_I915
17499486b8eSJosh Triplett	help
17599486b8eSJosh Triplett	  Choose this option if you have prerelease Intel hardware and want the
17699486b8eSJosh Triplett	  i915 driver to support it by default.  You can enable such support at
17799486b8eSJosh Triplett	  runtime with the module option i915.preliminary_hw_support=1; this
17899486b8eSJosh Triplett	  option changes the default for that module option.
17999486b8eSJosh Triplett
18099486b8eSJosh Triplett	  If in doubt, say "N".
18199486b8eSJosh Triplett
182c0e09200SDave Airlieconfig DRM_MGA
183c0e09200SDave Airlie	tristate "Matrox g200/g400"
184f5f05c8aSDave Airlie	depends on DRM && PCI
185ece2be79SBen Hutchings	select FW_LOADER
186c0e09200SDave Airlie	help
187c0e09200SDave Airlie	  Choose this option if you have a Matrox G200, G400 or G450 graphics
188c0e09200SDave Airlie	  card.  If M is selected, the module will be called mga.  AGP
189c0e09200SDave Airlie	  support is required for this driver to work.
190c0e09200SDave Airlie
191c0e09200SDave Airlieconfig DRM_SIS
192c0e09200SDave Airlie	tristate "SiS video cards"
193c0e09200SDave Airlie	depends on DRM && AGP
194dfcf96d0SAdrian Bunk	depends on FB_SIS || FB_SIS=n
195c0e09200SDave Airlie	help
196c0e09200SDave Airlie	  Choose this option if you have a SiS 630 or compatible video
197c0e09200SDave Airlie          chipset. If M is selected the module will be called sis. AGP
198c0e09200SDave Airlie          support is required for this driver to work.
199c0e09200SDave Airlie
200c0e09200SDave Airlieconfig DRM_VIA
201c0e09200SDave Airlie	tristate "Via unichrome video cards"
202f5f05c8aSDave Airlie	depends on DRM && PCI
203c0e09200SDave Airlie	help
204c0e09200SDave Airlie	  Choose this option if you have a Via unichrome or compatible video
205c0e09200SDave Airlie	  chipset. If M is selected the module will be called via.
206c0e09200SDave Airlie
207c0e09200SDave Airlieconfig DRM_SAVAGE
208c0e09200SDave Airlie	tristate "Savage video cards"
209f5f05c8aSDave Airlie	depends on DRM && PCI
210c0e09200SDave Airlie	help
211c0e09200SDave Airlie	  Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
212c0e09200SDave Airlie	  chipset. If M is selected the module will be called savage.
2131c248b7dSInki Dae
2141c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig"
2155a7b74beSThomas Hellstrom
2165a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig"
21791c75492SAlan Cox
21891c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig"
21991c75492SAlan Cox
2205320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig"
221312fec14SDave Airlie
222312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig"
223312fec14SDave Airlie
224414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig"
225f9aa76a8SDave Airlie
226f9aa76a8SDave Airliesource "drivers/gpu/drm/cirrus/Kconfig"
22751c13278SLaurent Pinchart
228*96f60e37SRussell Kingsource "drivers/gpu/drm/armada/Kconfig"
229*96f60e37SRussell King
2304bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig"
2314bf8e196SLaurent Pinchart
23251c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig"
233d8f4a9edSThierry Reding
2348bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig"
235ca18e142SDave Airlie
23616ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig"
237f64122c1SDave Airlie
238f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig"
239c8afe684SRob Clark
240c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig"
241