xref: /linux/drivers/gpu/drm/Kconfig (revision b9d474500546160dd6af35f60cd8bc20edd13807)
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)"
9dcdb1674SJordan Crouse	depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU
1057a6297eSDave Airlie	select I2C
1157a6297eSDave Airlie	select I2C_ALGOBIT
123248877eSDave Airlie	select DMA_SHARED_BUFFER
13c0e09200SDave Airlie	help
14c0e09200SDave Airlie	  Kernel-level support for the Direct Rendering Infrastructure (DRI)
15c0e09200SDave Airlie	  introduced in XFree86 4.0. If you say Y here, you need to select
16c0e09200SDave Airlie	  the module that's right for your graphics card from the list below.
17c0e09200SDave Airlie	  These modules provide support for synchronization, security, and
18c0e09200SDave Airlie	  DMA transfers. Please see <http://dri.sourceforge.net/> for more
19c0e09200SDave Airlie	  details.  You should also select and configure AGP
20dcdb1674SJordan Crouse	  (/dev/agpgart) support if it is available for your platform.
21c0e09200SDave Airlie
229c1dfc55SDave Airlieconfig DRM_USB
239c1dfc55SDave Airlie	tristate
249c1dfc55SDave Airlie	depends on DRM
2595ca19cfSSedat Dilek	depends on USB_SUPPORT && USB_ARCH_HAS_HCD
269c1dfc55SDave Airlie	select USB
279c1dfc55SDave Airlie
286fcefd56SDave Airlieconfig DRM_KMS_HELPER
2913a8195bSDave Airlie	tristate
3013a8195bSDave Airlie	depends on DRM
3113a8195bSDave Airlie	select FB
326a108a14SDavid Rientjes	select FRAMEBUFFER_CONSOLE if !EXPERT
33bf5192edSDave Airlie	select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
3413a8195bSDave Airlie	help
356fcefd56SDave Airlie	  FB and CRTC helpers for KMS drivers.
3613a8195bSDave Airlie
37da0df92bSCarsten Emdeconfig DRM_LOAD_EDID_FIRMWARE
38da0df92bSCarsten Emde	bool "Allow to specify an EDID data set instead of probing for it"
39da0df92bSCarsten Emde	depends on DRM_KMS_HELPER
40da0df92bSCarsten Emde	help
41da0df92bSCarsten Emde	  Say Y here, if you want to use EDID data to be loaded from the
42da0df92bSCarsten Emde	  /lib/firmware directory or one of the provided built-in
43da0df92bSCarsten Emde	  data sets. This may be necessary, if the graphics adapter or
44da0df92bSCarsten Emde	  monitor are unable to provide appropriate EDID data. Since this
45da0df92bSCarsten Emde	  feature is provided as a workaround for broken hardware, the
46da0df92bSCarsten Emde	  default case is N. Details and instructions how to build your own
47da0df92bSCarsten Emde	  EDID data are given in Documentation/EDID/HOWTO.txt.
48da0df92bSCarsten Emde
49ba4e7d97SThomas Hellstromconfig DRM_TTM
50771fe6b9SJerome Glisse	tristate
51ba4e7d97SThomas Hellstrom	depends on DRM
52ba4e7d97SThomas Hellstrom	help
53ba4e7d97SThomas Hellstrom	  GPU memory management subsystem for devices with multiple
54ba4e7d97SThomas Hellstrom	  GPU memory types. Will be enabled automatically if a device driver
55ba4e7d97SThomas Hellstrom	  uses it.
56ba4e7d97SThomas Hellstrom
57*b9d47450SSascha Hauerconfig DRM_GEM_CMA_HELPER
58*b9d47450SSascha Hauer	bool
59*b9d47450SSascha Hauer	depends on DRM
60*b9d47450SSascha Hauer	help
61*b9d47450SSascha Hauer	  Choose this if you need the GEM CMA helper functions
62*b9d47450SSascha Hauer
63c0e09200SDave Airlieconfig DRM_TDFX
64c0e09200SDave Airlie	tristate "3dfx Banshee/Voodoo3+"
65c0e09200SDave Airlie	depends on DRM && PCI
66c0e09200SDave Airlie	help
67c0e09200SDave Airlie	  Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
68c0e09200SDave Airlie	  graphics card.  If M is selected, the module will be called tdfx.
69c0e09200SDave Airlie
70c0e09200SDave Airlieconfig DRM_R128
71c0e09200SDave Airlie	tristate "ATI Rage 128"
72c0e09200SDave Airlie	depends on DRM && PCI
7352f97df5SBen Hutchings	select FW_LOADER
74c0e09200SDave Airlie	help
75c0e09200SDave Airlie	  Choose this option if you have an ATI Rage 128 graphics card.  If M
76c0e09200SDave Airlie	  is selected, the module will be called r128.  AGP support for
77c0e09200SDave Airlie	  this card is strongly suggested (unless you have a PCI version).
78c0e09200SDave Airlie
79c0e09200SDave Airlieconfig DRM_RADEON
80c0e09200SDave Airlie	tristate "ATI Radeon"
81c0e09200SDave Airlie	depends on DRM && PCI
82771fe6b9SJerome Glisse	select FB_CFB_FILLRECT
83771fe6b9SJerome Glisse	select FB_CFB_COPYAREA
84771fe6b9SJerome Glisse	select FB_CFB_IMAGEBLIT
8570967ab9SBen Hutchings	select FW_LOADER
86a0cdc649SDave Airlie        select DRM_KMS_HELPER
87a0cdc649SDave Airlie        select DRM_TTM
885d9b7e2dSDave Airlie	select POWER_SUPPLY
8921a8122aSAlex Deucher	select HWMON
90c0e09200SDave Airlie	help
91c0e09200SDave Airlie	  Choose this option if you have an ATI Radeon graphics card.  There
92c0e09200SDave Airlie	  are both PCI and AGP versions.  You don't need to choose this to
93c0e09200SDave Airlie	  run the Radeon in plain VGA mode.
94c0e09200SDave Airlie
95c0e09200SDave Airlie	  If M is selected, the module will be called radeon.
96c0e09200SDave Airlie
97f71d0187SDave Airliesource "drivers/gpu/drm/radeon/Kconfig"
98f71d0187SDave Airlie
99f3c93cbdSBen Skeggssource "drivers/gpu/drm/nouveau/Kconfig"
100f3c93cbdSBen Skeggs
101c0e09200SDave Airlieconfig DRM_I810
102c0e09200SDave Airlie	tristate "Intel I810"
1031f692a14SArnd Bergmann	# !PREEMPT because of missing ioctl locking
1041f692a14SArnd Bergmann	depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN)
105c0e09200SDave Airlie	help
106c0e09200SDave Airlie	  Choose this option if you have an Intel I810 graphics card.  If M is
107c0e09200SDave Airlie	  selected, the module will be called i810.  AGP support is required
108c0e09200SDave Airlie	  for this driver to work.
109c0e09200SDave Airlie
110c0e09200SDave Airlieconfig DRM_I915
1117f506847SArnd Bergmann	tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
1127f506847SArnd Bergmann	depends on DRM
1137f506847SArnd Bergmann	depends on AGP
1148c52da50SEric Anholt	depends on AGP_INTEL
115f7ab9b40SChris Wilson	# we need shmfs for the swappable backing store, and in particular
116f7ab9b40SChris Wilson	# the shmem_readpage() which depends upon tmpfs
117ca9ab100SChris Wilson	select SHMEM
118f7ab9b40SChris Wilson	select TMPFS
1196fcefd56SDave Airlie	select DRM_KMS_HELPER
12006d9f33cSEric Anholt	select FB_CFB_FILLRECT
12106d9f33cSEric Anholt	select FB_CFB_COPYAREA
12206d9f33cSEric Anholt	select FB_CFB_IMAGEBLIT
12331db5645SLen Brown	# i915 depends on ACPI_VIDEO when ACPI is enabled
12431db5645SLen Brown	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
12544a1dabfSRandy Dunlap	select BACKLIGHT_LCD_SUPPORT if ACPI
12631db5645SLen Brown	select BACKLIGHT_CLASS_DEVICE if ACPI
127cbf15bdbSKonstantin Khlebnikov	select VIDEO_OUTPUT_CONTROL if ACPI
12831db5645SLen Brown	select INPUT if ACPI
12931db5645SLen Brown	select ACPI_VIDEO if ACPI
130c1c7af60SJesse Barnes	select ACPI_BUTTON if ACPI
131c0e09200SDave Airlie	help
1327f506847SArnd Bergmann	  Choose this option if you have a system that has "Intel Graphics
1337f506847SArnd Bergmann	  Media Accelerator" or "HD Graphics" integrated graphics,
1347f506847SArnd Bergmann	  including 830M, 845G, 852GM, 855GM, 865G, 915G, 945G, 965G,
1357f506847SArnd Bergmann	  G35, G41, G43, G45 chipsets and Celeron, Pentium, Core i3,
1367f506847SArnd Bergmann	  Core i5, Core i7 as well as Atom CPUs with integrated graphics.
1377f506847SArnd Bergmann	  If M is selected, the module will be called i915.  AGP support
1387f506847SArnd Bergmann	  is required for this driver to work. This driver is used by
1397f506847SArnd Bergmann	  the Intel driver in X.org 6.8 and XFree86 4.4 and above. It
1407f506847SArnd Bergmann	  replaces the older i830 module that supported a subset of the
1417f506847SArnd Bergmann	  hardware in older X.org releases.
1427f506847SArnd Bergmann
1437f506847SArnd Bergmann	  Note that the older i810/i815 chipsets require the use of the
1447f506847SArnd Bergmann	  i810 driver instead, and the Atom z5xx series has an entirely
1457f506847SArnd Bergmann	  different implementation.
146c0e09200SDave Airlie
14779e53945SJesse Barnesconfig DRM_I915_KMS
14879e53945SJesse Barnes	bool "Enable modesetting on intel by default"
14979e53945SJesse Barnes	depends on DRM_I915
15079e53945SJesse Barnes	help
15179e53945SJesse Barnes	  Choose this option if you want kernel modesetting enabled by default,
15279e53945SJesse Barnes	  and you have a new enough userspace to support this. Running old
15379e53945SJesse Barnes	  userspaces with this enabled will cause pain.  Note that this causes
15479e53945SJesse Barnes	  the driver to bind to PCI devices, which precludes loading things
15579e53945SJesse Barnes	  like intelfb.
15679e53945SJesse Barnes
157c0e09200SDave Airlieconfig DRM_MGA
158c0e09200SDave Airlie	tristate "Matrox g200/g400"
159f5f05c8aSDave Airlie	depends on DRM && PCI
160ece2be79SBen Hutchings	select FW_LOADER
161c0e09200SDave Airlie	help
162c0e09200SDave Airlie	  Choose this option if you have a Matrox G200, G400 or G450 graphics
163c0e09200SDave Airlie	  card.  If M is selected, the module will be called mga.  AGP
164c0e09200SDave Airlie	  support is required for this driver to work.
165c0e09200SDave Airlie
166c0e09200SDave Airlieconfig DRM_SIS
167c0e09200SDave Airlie	tristate "SiS video cards"
168c0e09200SDave Airlie	depends on DRM && AGP
169dfcf96d0SAdrian Bunk	depends on FB_SIS || FB_SIS=n
170c0e09200SDave Airlie	help
171c0e09200SDave Airlie	  Choose this option if you have a SiS 630 or compatible video
172c0e09200SDave Airlie          chipset. If M is selected the module will be called sis. AGP
173c0e09200SDave Airlie          support is required for this driver to work.
174c0e09200SDave Airlie
175c0e09200SDave Airlieconfig DRM_VIA
176c0e09200SDave Airlie	tristate "Via unichrome video cards"
177f5f05c8aSDave Airlie	depends on DRM && PCI
178c0e09200SDave Airlie	help
179c0e09200SDave Airlie	  Choose this option if you have a Via unichrome or compatible video
180c0e09200SDave Airlie	  chipset. If M is selected the module will be called via.
181c0e09200SDave Airlie
182c0e09200SDave Airlieconfig DRM_SAVAGE
183c0e09200SDave Airlie	tristate "Savage video cards"
184f5f05c8aSDave Airlie	depends on DRM && PCI
185c0e09200SDave Airlie	help
186c0e09200SDave Airlie	  Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
187c0e09200SDave Airlie	  chipset. If M is selected the module will be called savage.
1881c248b7dSInki Dae
1891c248b7dSInki Daesource "drivers/gpu/drm/exynos/Kconfig"
1905a7b74beSThomas Hellstrom
1915a7b74beSThomas Hellstromsource "drivers/gpu/drm/vmwgfx/Kconfig"
19291c75492SAlan Cox
19391c75492SAlan Coxsource "drivers/gpu/drm/gma500/Kconfig"
19491c75492SAlan Cox
1955320918bSDave Airliesource "drivers/gpu/drm/udl/Kconfig"
196312fec14SDave Airlie
197312fec14SDave Airliesource "drivers/gpu/drm/ast/Kconfig"
198312fec14SDave Airlie
199414c4531SDave Airliesource "drivers/gpu/drm/mgag200/Kconfig"
200f9aa76a8SDave Airlie
201f9aa76a8SDave Airliesource "drivers/gpu/drm/cirrus/Kconfig"
202