xref: /linux/drivers/gpu/drm/Kconfig (revision 92b6f89f6b85f433ddac1f4a9eb0962dc96380fe)
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
32*92b6f89fSDaniel Vetter	help
33*92b6f89fSDaniel Vetter	  CRTC helpers for KMS drivers.
34*92b6f89fSDaniel Vetter
35*92b6f89fSDaniel Vetterconfig DRM_KMS_FB_HELPER
36*92b6f89fSDaniel Vetter	bool
37*92b6f89fSDaniel Vetter	depends on DRM_KMS_HELPER
3813a8195bSDave Airlie	select FB
396a108a14SDavid Rientjes	select FRAMEBUFFER_CONSOLE if !EXPERT
40bf5192edSDave Airlie	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
4113a8195bSDave Airlie	help
42*92b6f89fSDaniel Vetter	  FBDEV helpers for KMS drivers.
4313a8195bSDave Airlie
44da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE
45da0df92bSCarsten Emde	bool "Allow to specify an EDID data set instead of probing for it"
46da0df92bSCarsten Emde	depends on DRM_KMS_HELPER
47da0df92bSCarsten Emde	help
48da0df92bSCarsten Emde	  Say Y here, if you want to use EDID data to be loaded from the
49da0df92bSCarsten Emde	  /lib/firmware directory or one of the provided built-in
50da0df92bSCarsten Emde	  data sets. This may be necessary, if the graphics adapter or
51da0df92bSCarsten Emde	  monitor are unable to provide appropriate EDID data. Since this
52da0df92bSCarsten Emde	  feature is provided as a workaround for broken hardware, the
53da0df92bSCarsten Emde	  default case is N. Details and instructions how to build your own
54da0df92bSCarsten Emde	  EDID data are given in Documentation/EDID/HOWTO.txt.
55da0df92bSCarsten Emde
56ba4e7d97SThomas Hellstromconfig DRM_TTM
57771fe6b9SJerome Glisse	tristate
58ba4e7d97SThomas Hellstrom	depends on DRM
59ba4e7d97SThomas Hellstrom	help
60ba4e7d97SThomas Hellstrom	  GPU memory management subsystem for devices with multiple
61ba4e7d97SThomas Hellstrom	  GPU memory types. Will be enabled automatically if a device driver
62ba4e7d97SThomas Hellstrom	  uses it.
63ba4e7d97SThomas Hellstrom
64b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER
65b9d47450SSascha Hauer	bool
66b9d47450SSascha Hauer	depends on DRM
67b9d47450SSascha Hauer	help
68b9d47450SSascha Hauer	  Choose this if you need the GEM CMA helper functions
69b9d47450SSascha Hauer
702e3b3c42SLars-Peter Clausenconfig DRM_KMS_CMA_HELPER
712e3b3c42SLars-Peter Clausen	bool
722e3b3c42SLars-Peter Clausen	select DRM_GEM_CMA_HELPER
73*92b6f89fSDaniel Vetter	select DRM_KMS_FB_HELPER
742e3b3c42SLars-Peter Clausen	select FB_SYS_FILLRECT
752e3b3c42SLars-Peter Clausen	select FB_SYS_COPYAREA
762e3b3c42SLars-Peter Clausen	select FB_SYS_IMAGEBLIT
772e3b3c42SLars-Peter Clausen	help
782e3b3c42SLars-Peter Clausen	  Choose this if you need the KMS CMA helper functions
792e3b3c42SLars-Peter Clausen
806504d0d9SRob Clarksource "drivers/gpu/drm/i2c/Kconfig"
816504d0d9SRob Clark
82c0e09200SDave Airlieconfig DRM_TDFX
83c0e09200SDave Airlie	tristate "3dfx Banshee/Voodoo3+"
84c0e09200SDave Airlie	depends on DRM && PCI
85c0e09200SDave Airlie	help
86c0e09200SDave Airlie	  Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
87c0e09200SDave Airlie	  graphics card.  If M is selected, the module will be called tdfx.
88c0e09200SDave Airlie
89c0e09200SDave Airlieconfig DRM_R128
90c0e09200SDave Airlie	tristate "ATI Rage 128"
91c0e09200SDave Airlie	depends on DRM && PCI
9252f97df5SBen Hutchings	select FW_LOADER
93c0e09200SDave Airlie	help
94c0e09200SDave Airlie	  Choose this option if you have an ATI Rage 128 graphics card.  If M
95c0e09200SDave Airlie	  is selected, the module will be called r128.  AGP support for
96c0e09200SDave Airlie	  this card is strongly suggested (unless you have a PCI version).
97c0e09200SDave Airlie
98c0e09200SDave Airlieconfig DRM_RADEON
99c0e09200SDave Airlie	tristate "ATI Radeon"
100c0e09200SDave Airlie	depends on DRM && PCI
101771fe6b9SJerome Glisse	select FB_CFB_FILLRECT
102771fe6b9SJerome Glisse	select FB_CFB_COPYAREA
103771fe6b9SJerome Glisse	select FB_CFB_IMAGEBLIT
10470967ab9SBen Hutchings	select FW_LOADER
105a0cdc649SDave Airlie        select DRM_KMS_HELPER
106*92b6f89fSDaniel Vetter	select DRM_KMS_FB_HELPER
107a0cdc649SDave Airlie        select DRM_TTM
1085d9b7e2dSDave Airlie	select POWER_SUPPLY
10921a8122aSAlex Deucher	select HWMON
11014adc892SChristian König	select BACKLIGHT_CLASS_DEVICE
111c0e09200SDave Airlie	help
112c0e09200SDave Airlie	  Choose this option if you have an ATI Radeon graphics card.  There
113c0e09200SDave Airlie	  are both PCI and AGP versions.  You don't need to choose this to
114c0e09200SDave Airlie	  run the Radeon in plain VGA mode.
115c0e09200SDave Airlie
116c0e09200SDave Airlie	  If M is selected, the module will be called radeon.
117c0e09200SDave Airlie
118f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig"
119f71d0187SDave Airlie
120f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig"
121f3c93cbdSBen Skeggs
122c0e09200SDave Airlieconfig DRM_I810
123c0e09200SDave Airlie	tristate "Intel I810"
1241f692a14SArnd Bergmann	# !PREEMPT because of missing ioctl locking
1251f692a14SArnd Bergmann	depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN)
126c0e09200SDave Airlie	help
127c0e09200SDave Airlie	  Choose this option if you have an Intel I810 graphics card.  If M is
128c0e09200SDave Airlie	  selected, the module will be called i810.  AGP support is required
129c0e09200SDave Airlie	  for this driver to work.
130c0e09200SDave Airlie
131c0e09200SDave Airlieconfig DRM_I915
1327f506847SArnd Bergmann	tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
1337f506847SArnd Bergmann	depends on DRM
1347f506847SArnd Bergmann	depends on AGP
1358c52da50SEric Anholt	depends on AGP_INTEL
136f7ab9b40SChris Wilson	# we need shmfs for the swappable backing store, and in particular
137f7ab9b40SChris Wilson	# the shmem_readpage() which depends upon tmpfs
138ca9ab100SChris Wilson	select SHMEM
139f7ab9b40SChris Wilson	select TMPFS
1406fcefd56SDave Airlie	select DRM_KMS_HELPER
141*92b6f89fSDaniel Vetter	select DRM_KMS_FB_HELPER
14206d9f33cSEric Anholt	select FB_CFB_FILLRECT
14306d9f33cSEric Anholt	select FB_CFB_COPYAREA
14406d9f33cSEric Anholt	select FB_CFB_IMAGEBLIT
14531db5645SLen Brown	# i915 depends on ACPI_VIDEO when ACPI is enabled
14631db5645SLen Brown	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
14744a1dabfSRandy Dunlap	select BACKLIGHT_LCD_SUPPORT if ACPI
14831db5645SLen Brown	select BACKLIGHT_CLASS_DEVICE if ACPI
149cbf15bdbSKonstantin Khlebnikov	select VIDEO_OUTPUT_CONTROL if ACPI
15031db5645SLen Brown	select INPUT if ACPI
1511107276cSMaarten Lankhorst	select THERMAL if ACPI
15231db5645SLen Brown	select ACPI_VIDEO if ACPI
153c1c7af60SJesse Barnes	select ACPI_BUTTON if ACPI
154c0e09200SDave Airlie	help
1557f506847SArnd Bergmann	  Choose this option if you have a system that has "Intel Graphics
1567f506847SArnd Bergmann	  Media Accelerator" or "HD Graphics" integrated graphics,
1577f506847SArnd Bergmann	  including 830M, 845G, 852GM, 855GM, 865G, 915G, 945G, 965G,
1587f506847SArnd Bergmann	  G35, G41, G43, G45 chipsets and Celeron, Pentium, Core i3,
1597f506847SArnd Bergmann	  Core i5, Core i7 as well as Atom CPUs with integrated graphics.
1607f506847SArnd Bergmann	  If M is selected, the module will be called i915.  AGP support
1617f506847SArnd Bergmann	  is required for this driver to work. This driver is used by
1627f506847SArnd Bergmann	  the Intel driver in X.org 6.8 and XFree86 4.4 and above. It
1637f506847SArnd Bergmann	  replaces the older i830 module that supported a subset of the
1647f506847SArnd Bergmann	  hardware in older X.org releases.
1657f506847SArnd Bergmann
1667f506847SArnd Bergmann	  Note that the older i810/i815 chipsets require the use of the
1677f506847SArnd Bergmann	  i810 driver instead, and the Atom z5xx series has an entirely
1687f506847SArnd Bergmann	  different implementation.
169c0e09200SDave Airlie
17079e53945SJesse Barnesconfig DRM_I915_KMS
17179e53945SJesse Barnes	bool "Enable modesetting on intel by default"
17279e53945SJesse Barnes	depends on DRM_I915
17379e53945SJesse Barnes	help
17479e53945SJesse Barnes	  Choose this option if you want kernel modesetting enabled by default,
17579e53945SJesse Barnes	  and you have a new enough userspace to support this. Running old
17679e53945SJesse Barnes	  userspaces with this enabled will cause pain.  Note that this causes
17779e53945SJesse Barnes	  the driver to bind to PCI devices, which precludes loading things
17879e53945SJesse Barnes	  like intelfb.
17979e53945SJesse Barnes
18099486b8eSJosh Triplettconfig DRM_I915_PRELIMINARY_HW_SUPPORT
18199486b8eSJosh Triplett	bool "Enable preliminary support for prerelease Intel hardware by default"
18299486b8eSJosh Triplett	depends on DRM_I915
18399486b8eSJosh Triplett	help
18499486b8eSJosh Triplett	  Choose this option if you have prerelease Intel hardware and want the
18599486b8eSJosh Triplett	  i915 driver to support it by default.  You can enable such support at
18699486b8eSJosh Triplett	  runtime with the module option i915.preliminary_hw_support=1; this
18799486b8eSJosh Triplett	  option changes the default for that module option.
18899486b8eSJosh Triplett
18999486b8eSJosh Triplett	  If in doubt, say "N".
19099486b8eSJosh Triplett
191c0e09200SDave Airlieconfig DRM_MGA
192c0e09200SDave Airlie	tristate "Matrox g200/g400"
193f5f05c8aSDave Airlie	depends on DRM && PCI
194ece2be79SBen Hutchings	select FW_LOADER
195c0e09200SDave Airlie	help
196c0e09200SDave Airlie	  Choose this option if you have a Matrox G200, G400 or G450 graphics
197c0e09200SDave Airlie	  card.  If M is selected, the module will be called mga.  AGP
198c0e09200SDave Airlie	  support is required for this driver to work.
199c0e09200SDave Airlie
200c0e09200SDave Airlieconfig DRM_SIS
201c0e09200SDave Airlie	tristate "SiS video cards"
202c0e09200SDave Airlie	depends on DRM && AGP
203dfcf96d0SAdrian Bunk	depends on FB_SIS || FB_SIS=n
204c0e09200SDave Airlie	help
205c0e09200SDave Airlie	  Choose this option if you have a SiS 630 or compatible video
206c0e09200SDave Airlie          chipset. If M is selected the module will be called sis. AGP
207c0e09200SDave Airlie          support is required for this driver to work.
208c0e09200SDave Airlie
209c0e09200SDave Airlieconfig DRM_VIA
210c0e09200SDave Airlie	tristate "Via unichrome video cards"
211f5f05c8aSDave Airlie	depends on DRM && PCI
212c0e09200SDave Airlie	help
213c0e09200SDave Airlie	  Choose this option if you have a Via unichrome or compatible video
214c0e09200SDave Airlie	  chipset. If M is selected the module will be called via.
215c0e09200SDave Airlie
216c0e09200SDave Airlieconfig DRM_SAVAGE
217c0e09200SDave Airlie	tristate "Savage video cards"
218f5f05c8aSDave Airlie	depends on DRM && PCI
219c0e09200SDave Airlie	help
220c0e09200SDave Airlie	  Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
221c0e09200SDave Airlie	  chipset. If M is selected the module will be called savage.
2221c248b7dSInki Dae
2231c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig"
2245a7b74beSThomas Hellstrom
2255a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig"
22691c75492SAlan Cox
22791c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig"
22891c75492SAlan Cox
2295320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig"
230312fec14SDave Airlie
231312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig"
232312fec14SDave Airlie
233414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig"
234f9aa76a8SDave Airlie
235f9aa76a8SDave Airliesource "drivers/gpu/drm/cirrus/Kconfig"
23651c13278SLaurent Pinchart
2374bf8e196SLaurent Pinchartsource "drivers/gpu/drm/rcar-du/Kconfig"
2384bf8e196SLaurent Pinchart
23951c13278SLaurent Pinchartsource "drivers/gpu/drm/shmobile/Kconfig"
240d8f4a9edSThierry Reding
2418bb0daffSRob Clarksource "drivers/gpu/drm/omapdrm/Kconfig"
242ca18e142SDave Airlie
24316ea975eSRob Clarksource "drivers/gpu/drm/tilcdc/Kconfig"
244f64122c1SDave Airlie
245f64122c1SDave Airliesource "drivers/gpu/drm/qxl/Kconfig"
246c8afe684SRob Clark
247c8afe684SRob Clarksource "drivers/gpu/drm/msm/Kconfig"
248