Loading...
1#
2# Drm device configuration
3#
4# This driver provides support for the
5# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
6#
7menuconfig DRM
8 tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
9 depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU && HAS_DMA
10 select HDMI
11 select FB_CMDLINE
12 select I2C
13 select I2C_ALGOBIT
14 select DMA_SHARED_BUFFER
15 help
16 Kernel-level support for the Direct Rendering Infrastructure (DRI)
17 introduced in XFree86 4.0. If you say Y here, you need to select
18 the module that's right for your graphics card from the list below.
19 These modules provide support for synchronization, security, and
20 DMA transfers. Please see <http://dri.sourceforge.net/> for more
21 details. You should also select and configure AGP
22 (/dev/agpgart) support if it is available for your platform.
23
24config DRM_MIPI_DSI
25 bool
26 depends on DRM
27
28config DRM_DP_AUX_CHARDEV
29 bool "DRM DP AUX Interface"
30 depends on DRM
31 help
32 Choose this option to enable a /dev/drm_dp_auxN node that allows to
33 read and write values to arbitrary DPCD registers on the DP aux
34 channel.
35
36config DRM_KMS_HELPER
37 tristate
38 depends on DRM
39 help
40 CRTC helpers for KMS drivers.
41
42config DRM_KMS_FB_HELPER
43 bool
44 depends on DRM_KMS_HELPER
45 select FB
46 select FRAMEBUFFER_CONSOLE if !EXPERT
47 select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
48 select FB_SYS_FOPS
49 select FB_SYS_FILLRECT
50 select FB_SYS_COPYAREA
51 select FB_SYS_IMAGEBLIT
52 select FB_CFB_FILLRECT
53 select FB_CFB_COPYAREA
54 select FB_CFB_IMAGEBLIT
55 help
56 FBDEV helpers for KMS drivers.
57
58config DRM_FBDEV_EMULATION
59 bool "Enable legacy fbdev support for your modesetting driver"
60 depends on DRM
61 select DRM_KMS_HELPER
62 select DRM_KMS_FB_HELPER
63 default y
64 help
65 Choose this option if you have a need for the legacy fbdev
66 support. Note that this support also provides the linux console
67 support on top of your modesetting driver.
68
69 If in doubt, say "Y".
70
71config DRM_LOAD_EDID_FIRMWARE
72 bool "Allow to specify an EDID data set instead of probing for it"
73 depends on DRM_KMS_HELPER
74 help
75 Say Y here, if you want to use EDID data to be loaded from the
76 /lib/firmware directory or one of the provided built-in
77 data sets. This may be necessary, if the graphics adapter or
78 monitor are unable to provide appropriate EDID data. Since this
79 feature is provided as a workaround for broken hardware, the
80 default case is N. Details and instructions how to build your own
81 EDID data are given in Documentation/EDID/HOWTO.txt.
82
83config DRM_TTM
84 tristate
85 depends on DRM
86 help
87 GPU memory management subsystem for devices with multiple
88 GPU memory types. Will be enabled automatically if a device driver
89 uses it.
90
91config DRM_GEM_CMA_HELPER
92 bool
93 depends on DRM
94 help
95 Choose this if you need the GEM CMA helper functions
96
97config DRM_KMS_CMA_HELPER
98 bool
99 depends on DRM
100 select DRM_GEM_CMA_HELPER
101 select DRM_KMS_FB_HELPER
102 select FB_SYS_FILLRECT
103 select FB_SYS_COPYAREA
104 select FB_SYS_IMAGEBLIT
105 help
106 Choose this if you need the KMS CMA helper functions
107
108source "drivers/gpu/drm/i2c/Kconfig"
109
110config DRM_TDFX
111 tristate "3dfx Banshee/Voodoo3+"
112 depends on DRM && PCI
113 help
114 Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
115 graphics card. If M is selected, the module will be called tdfx.
116
117source "drivers/gpu/drm/arm/Kconfig"
118
119config DRM_R128
120 tristate "ATI Rage 128"
121 depends on DRM && PCI
122 select FW_LOADER
123 help
124 Choose this option if you have an ATI Rage 128 graphics card. If M
125 is selected, the module will be called r128. AGP support for
126 this card is strongly suggested (unless you have a PCI version).
127
128config DRM_RADEON
129 tristate "ATI Radeon"
130 depends on DRM && PCI
131 select FB_CFB_FILLRECT
132 select FB_CFB_COPYAREA
133 select FB_CFB_IMAGEBLIT
134 select FW_LOADER
135 select DRM_KMS_HELPER
136 select DRM_KMS_FB_HELPER
137 select DRM_TTM
138 select POWER_SUPPLY
139 select HWMON
140 select BACKLIGHT_CLASS_DEVICE
141 select BACKLIGHT_LCD_SUPPORT
142 select INTERVAL_TREE
143 help
144 Choose this option if you have an ATI Radeon graphics card. There
145 are both PCI and AGP versions. You don't need to choose this to
146 run the Radeon in plain VGA mode.
147
148 If M is selected, the module will be called radeon.
149
150source "drivers/gpu/drm/radeon/Kconfig"
151
152config DRM_AMDGPU
153 tristate "AMD GPU"
154 depends on DRM && PCI
155 select FB_CFB_FILLRECT
156 select FB_CFB_COPYAREA
157 select FB_CFB_IMAGEBLIT
158 select FW_LOADER
159 select DRM_KMS_HELPER
160 select DRM_KMS_FB_HELPER
161 select DRM_TTM
162 select POWER_SUPPLY
163 select HWMON
164 select BACKLIGHT_CLASS_DEVICE
165 select BACKLIGHT_LCD_SUPPORT
166 select INTERVAL_TREE
167 help
168 Choose this option if you have a recent AMD Radeon graphics card.
169
170 If M is selected, the module will be called amdgpu.
171
172source "drivers/gpu/drm/amd/amdgpu/Kconfig"
173source "drivers/gpu/drm/amd/powerplay/Kconfig"
174
175source "drivers/gpu/drm/amd/acp/Kconfig"
176
177source "drivers/gpu/drm/nouveau/Kconfig"
178
179config DRM_I810
180 tristate "Intel I810"
181 # !PREEMPT because of missing ioctl locking
182 depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN)
183 help
184 Choose this option if you have an Intel I810 graphics card. If M is
185 selected, the module will be called i810. AGP support is required
186 for this driver to work.
187
188source "drivers/gpu/drm/i915/Kconfig"
189
190config DRM_MGA
191 tristate "Matrox g200/g400"
192 depends on DRM && PCI
193 select FW_LOADER
194 help
195 Choose this option if you have a Matrox G200, G400 or G450 graphics
196 card. If M is selected, the module will be called mga. AGP
197 support is required for this driver to work.
198
199config DRM_SIS
200 tristate "SiS video cards"
201 depends on DRM && AGP
202 depends on FB_SIS || FB_SIS=n
203 help
204 Choose this option if you have a SiS 630 or compatible video
205 chipset. If M is selected the module will be called sis. AGP
206 support is required for this driver to work.
207
208config DRM_VIA
209 tristate "Via unichrome video cards"
210 depends on DRM && PCI
211 help
212 Choose this option if you have a Via unichrome or compatible video
213 chipset. If M is selected the module will be called via.
214
215config DRM_SAVAGE
216 tristate "Savage video cards"
217 depends on DRM && PCI
218 help
219 Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
220 chipset. If M is selected the module will be called savage.
221
222config DRM_VGEM
223 tristate "Virtual GEM provider"
224 depends on DRM
225 help
226 Choose this option to get a virtual graphics memory manager,
227 as used by Mesa's software renderer for enhanced performance.
228 If M is selected the module will be called vgem.
229
230
231source "drivers/gpu/drm/exynos/Kconfig"
232
233source "drivers/gpu/drm/rockchip/Kconfig"
234
235source "drivers/gpu/drm/vmwgfx/Kconfig"
236
237source "drivers/gpu/drm/gma500/Kconfig"
238
239source "drivers/gpu/drm/udl/Kconfig"
240
241source "drivers/gpu/drm/ast/Kconfig"
242
243source "drivers/gpu/drm/mgag200/Kconfig"
244
245source "drivers/gpu/drm/cirrus/Kconfig"
246
247source "drivers/gpu/drm/armada/Kconfig"
248
249source "drivers/gpu/drm/atmel-hlcdc/Kconfig"
250
251source "drivers/gpu/drm/rcar-du/Kconfig"
252
253source "drivers/gpu/drm/shmobile/Kconfig"
254
255source "drivers/gpu/drm/omapdrm/Kconfig"
256
257source "drivers/gpu/drm/tilcdc/Kconfig"
258
259source "drivers/gpu/drm/qxl/Kconfig"
260
261source "drivers/gpu/drm/bochs/Kconfig"
262
263source "drivers/gpu/drm/virtio/Kconfig"
264
265source "drivers/gpu/drm/msm/Kconfig"
266
267source "drivers/gpu/drm/fsl-dcu/Kconfig"
268
269source "drivers/gpu/drm/tegra/Kconfig"
270
271source "drivers/gpu/drm/panel/Kconfig"
272
273source "drivers/gpu/drm/bridge/Kconfig"
274
275source "drivers/gpu/drm/sti/Kconfig"
276
277source "drivers/gpu/drm/amd/amdkfd/Kconfig"
278
279source "drivers/gpu/drm/imx/Kconfig"
280
281source "drivers/gpu/drm/vc4/Kconfig"
282
283source "drivers/gpu/drm/etnaviv/Kconfig"
1#
2# Drm device configuration
3#
4# This driver provides support for the
5# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
6#
7menuconfig DRM
8 tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
9 depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU && HAS_DMA
10 select HDMI
11 select FB_CMDLINE
12 select I2C
13 select I2C_ALGOBIT
14 select DMA_SHARED_BUFFER
15 select SYNC_FILE
16 help
17 Kernel-level support for the Direct Rendering Infrastructure (DRI)
18 introduced in XFree86 4.0. If you say Y here, you need to select
19 the module that's right for your graphics card from the list below.
20 These modules provide support for synchronization, security, and
21 DMA transfers. Please see <http://dri.sourceforge.net/> for more
22 details. You should also select and configure AGP
23 (/dev/agpgart) support if it is available for your platform.
24
25config DRM_MIPI_DSI
26 bool
27 depends on DRM
28
29config DRM_DP_AUX_CHARDEV
30 bool "DRM DP AUX Interface"
31 depends on DRM
32 help
33 Choose this option to enable a /dev/drm_dp_auxN node that allows to
34 read and write values to arbitrary DPCD registers on the DP aux
35 channel.
36
37config DRM_DEBUG_MM
38 bool "Insert extra checks and debug info into the DRM range managers"
39 default n
40 depends on DRM=y
41 depends on STACKTRACE_SUPPORT
42 select STACKDEPOT
43 help
44 Enable allocation tracking of memory manager and leak detection on
45 shutdown.
46
47 Recommended for driver developers only.
48
49 If in doubt, say "N".
50
51config DRM_KMS_HELPER
52 tristate
53 depends on DRM
54 help
55 CRTC helpers for KMS drivers.
56
57config DRM_KMS_FB_HELPER
58 bool
59 depends on DRM_KMS_HELPER
60 select FB
61 select FRAMEBUFFER_CONSOLE if !EXPERT
62 select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE
63 select FB_SYS_FOPS
64 select FB_SYS_FILLRECT
65 select FB_SYS_COPYAREA
66 select FB_SYS_IMAGEBLIT
67 select FB_CFB_FILLRECT
68 select FB_CFB_COPYAREA
69 select FB_CFB_IMAGEBLIT
70 select FB_DEFERRED_IO
71 help
72 FBDEV helpers for KMS drivers.
73
74config DRM_FBDEV_EMULATION
75 bool "Enable legacy fbdev support for your modesetting driver"
76 depends on DRM
77 select DRM_KMS_HELPER
78 select DRM_KMS_FB_HELPER
79 default y
80 help
81 Choose this option if you have a need for the legacy fbdev
82 support. Note that this support also provides the linux console
83 support on top of your modesetting driver.
84
85 If in doubt, say "Y".
86
87config DRM_LOAD_EDID_FIRMWARE
88 bool "Allow to specify an EDID data set instead of probing for it"
89 depends on DRM_KMS_HELPER
90 help
91 Say Y here, if you want to use EDID data to be loaded from the
92 /lib/firmware directory or one of the provided built-in
93 data sets. This may be necessary, if the graphics adapter or
94 monitor are unable to provide appropriate EDID data. Since this
95 feature is provided as a workaround for broken hardware, the
96 default case is N. Details and instructions how to build your own
97 EDID data are given in Documentation/EDID/HOWTO.txt.
98
99config DRM_TTM
100 tristate
101 depends on DRM
102 help
103 GPU memory management subsystem for devices with multiple
104 GPU memory types. Will be enabled automatically if a device driver
105 uses it.
106
107config DRM_GEM_CMA_HELPER
108 bool
109 depends on DRM
110 help
111 Choose this if you need the GEM CMA helper functions
112
113config DRM_KMS_CMA_HELPER
114 bool
115 depends on DRM
116 select DRM_GEM_CMA_HELPER
117 select DRM_KMS_FB_HELPER
118 select FB_SYS_FILLRECT
119 select FB_SYS_COPYAREA
120 select FB_SYS_IMAGEBLIT
121 help
122 Choose this if you need the KMS CMA helper functions
123
124source "drivers/gpu/drm/i2c/Kconfig"
125
126source "drivers/gpu/drm/arm/Kconfig"
127
128config DRM_RADEON
129 tristate "ATI Radeon"
130 depends on DRM && PCI
131 select FW_LOADER
132 select DRM_KMS_HELPER
133 select DRM_TTM
134 select POWER_SUPPLY
135 select HWMON
136 select BACKLIGHT_CLASS_DEVICE
137 select BACKLIGHT_LCD_SUPPORT
138 select INTERVAL_TREE
139 help
140 Choose this option if you have an ATI Radeon graphics card. There
141 are both PCI and AGP versions. You don't need to choose this to
142 run the Radeon in plain VGA mode.
143
144 If M is selected, the module will be called radeon.
145
146source "drivers/gpu/drm/radeon/Kconfig"
147
148config DRM_AMDGPU
149 tristate "AMD GPU"
150 depends on DRM && PCI
151 select FW_LOADER
152 select DRM_KMS_HELPER
153 select DRM_TTM
154 select POWER_SUPPLY
155 select HWMON
156 select BACKLIGHT_CLASS_DEVICE
157 select BACKLIGHT_LCD_SUPPORT
158 select INTERVAL_TREE
159 help
160 Choose this option if you have a recent AMD Radeon graphics card.
161
162 If M is selected, the module will be called amdgpu.
163
164source "drivers/gpu/drm/amd/amdgpu/Kconfig"
165
166source "drivers/gpu/drm/nouveau/Kconfig"
167
168source "drivers/gpu/drm/i915/Kconfig"
169
170config DRM_VGEM
171 tristate "Virtual GEM provider"
172 depends on DRM
173 help
174 Choose this option to get a virtual graphics memory manager,
175 as used by Mesa's software renderer for enhanced performance.
176 If M is selected the module will be called vgem.
177
178
179source "drivers/gpu/drm/exynos/Kconfig"
180
181source "drivers/gpu/drm/rockchip/Kconfig"
182
183source "drivers/gpu/drm/vmwgfx/Kconfig"
184
185source "drivers/gpu/drm/gma500/Kconfig"
186
187source "drivers/gpu/drm/udl/Kconfig"
188
189source "drivers/gpu/drm/ast/Kconfig"
190
191source "drivers/gpu/drm/mgag200/Kconfig"
192
193source "drivers/gpu/drm/cirrus/Kconfig"
194
195source "drivers/gpu/drm/armada/Kconfig"
196
197source "drivers/gpu/drm/atmel-hlcdc/Kconfig"
198
199source "drivers/gpu/drm/rcar-du/Kconfig"
200
201source "drivers/gpu/drm/shmobile/Kconfig"
202
203source "drivers/gpu/drm/sun4i/Kconfig"
204
205source "drivers/gpu/drm/omapdrm/Kconfig"
206
207source "drivers/gpu/drm/tilcdc/Kconfig"
208
209source "drivers/gpu/drm/qxl/Kconfig"
210
211source "drivers/gpu/drm/bochs/Kconfig"
212
213source "drivers/gpu/drm/virtio/Kconfig"
214
215source "drivers/gpu/drm/msm/Kconfig"
216
217source "drivers/gpu/drm/fsl-dcu/Kconfig"
218
219source "drivers/gpu/drm/tegra/Kconfig"
220
221source "drivers/gpu/drm/panel/Kconfig"
222
223source "drivers/gpu/drm/bridge/Kconfig"
224
225source "drivers/gpu/drm/sti/Kconfig"
226
227source "drivers/gpu/drm/amd/amdkfd/Kconfig"
228
229source "drivers/gpu/drm/imx/Kconfig"
230
231source "drivers/gpu/drm/vc4/Kconfig"
232
233source "drivers/gpu/drm/etnaviv/Kconfig"
234
235source "drivers/gpu/drm/arc/Kconfig"
236
237source "drivers/gpu/drm/hisilicon/Kconfig"
238
239source "drivers/gpu/drm/mediatek/Kconfig"
240
241source "drivers/gpu/drm/zte/Kconfig"
242
243source "drivers/gpu/drm/mxsfb/Kconfig"
244
245source "drivers/gpu/drm/meson/Kconfig"
246
247# Keep legacy drivers last
248
249menuconfig DRM_LEGACY
250 bool "Enable legacy drivers (DANGEROUS)"
251 depends on DRM
252 help
253 Enable legacy DRI1 drivers. Those drivers expose unsafe and dangerous
254 APIs to user-space, which can be used to circumvent access
255 restrictions and other security measures. For backwards compatibility
256 those drivers are still available, but their use is highly
257 inadvisable and might harm your system.
258
259 You are recommended to use the safe modeset-only drivers instead, and
260 perform 3D emulation in user-space.
261
262 Unless you have strong reasons to go rogue, say "N".
263
264if DRM_LEGACY
265
266config DRM_TDFX
267 tristate "3dfx Banshee/Voodoo3+"
268 depends on DRM && PCI
269 help
270 Choose this option if you have a 3dfx Banshee or Voodoo3 (or later),
271 graphics card. If M is selected, the module will be called tdfx.
272
273config DRM_R128
274 tristate "ATI Rage 128"
275 depends on DRM && PCI
276 select FW_LOADER
277 help
278 Choose this option if you have an ATI Rage 128 graphics card. If M
279 is selected, the module will be called r128. AGP support for
280 this card is strongly suggested (unless you have a PCI version).
281
282config DRM_I810
283 tristate "Intel I810"
284 # !PREEMPT because of missing ioctl locking
285 depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN)
286 help
287 Choose this option if you have an Intel I810 graphics card. If M is
288 selected, the module will be called i810. AGP support is required
289 for this driver to work.
290
291config DRM_MGA
292 tristate "Matrox g200/g400"
293 depends on DRM && PCI
294 select FW_LOADER
295 help
296 Choose this option if you have a Matrox G200, G400 or G450 graphics
297 card. If M is selected, the module will be called mga. AGP
298 support is required for this driver to work.
299
300config DRM_SIS
301 tristate "SiS video cards"
302 depends on DRM && AGP
303 depends on FB_SIS || FB_SIS=n
304 help
305 Choose this option if you have a SiS 630 or compatible video
306 chipset. If M is selected the module will be called sis. AGP
307 support is required for this driver to work.
308
309config DRM_VIA
310 tristate "Via unichrome video cards"
311 depends on DRM && PCI
312 help
313 Choose this option if you have a Via unichrome or compatible video
314 chipset. If M is selected the module will be called via.
315
316config DRM_SAVAGE
317 tristate "Savage video cards"
318 depends on DRM && PCI
319 help
320 Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister
321 chipset. If M is selected the module will be called savage.
322
323endif # DRM_LEGACY