Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# fbdev configuration
4#
5
6menuconfig FB
7 tristate "Support for frame buffer device drivers"
8 select FB_CORE
9 select FB_NOTIFY
10 help
11 The frame buffer device provides an abstraction for the graphics
12 hardware. It represents the frame buffer of some video hardware and
13 allows application software to access the graphics hardware through
14 a well-defined interface, so the software doesn't need to know
15 anything about the low-level (hardware register) stuff.
16
17 Frame buffer devices work identically across the different
18 architectures supported by Linux and make the implementation of
19 application programs easier and more portable; at this point, an X
20 server exists which uses the frame buffer device exclusively.
21 On several non-X86 architectures, the frame buffer device is the
22 only way to use the graphics hardware.
23
24 The device is accessed through special device nodes, usually located
25 in the /dev directory, i.e. /dev/fb*.
26
27 You need an utility program called fbset to make full use of frame
28 buffer devices. Please read <file:Documentation/fb/framebuffer.rst>
29 and the Framebuffer-HOWTO at
30 <http://www.munted.org.uk/programming/Framebuffer-HOWTO-1.3.html> for more
31 information.
32
33 This enables support for native frame buffer device (fbdev) drivers.
34
35 The DRM subsystem provides support for emulated frame buffer devices
36 on top of KMS drivers, but this option allows legacy fbdev drivers to
37 be enabled as well.
38
39 Say Y here and to the driver for your graphics board below if you
40 are compiling a kernel for a non-x86 architecture.
41
42 If you are compiling for the x86 architecture, you can say Y if you
43 want to play with it, but it is not essential. Please note that
44 running graphical applications that directly touch the hardware
45 (e.g. an accelerated X server) and that are not frame buffer
46 device-aware may cause unexpected results. If unsure, say N.
47
48config FB_HECUBA
49 tristate
50 depends on FB
51 select FB_SYSMEM_HELPERS_DEFERRED
52
53config FB_SVGALIB
54 tristate
55 depends on FB
56 help
57 Common utility functions useful to fbdev drivers of VGA-based
58 cards.
59
60config FB_MACMODES
61 tristate
62 depends on FB
63
64config FB_GRVGA
65 tristate "Aeroflex Gaisler framebuffer support"
66 depends on FB && SPARC
67 select FB_IOMEM_HELPERS
68 help
69 This enables support for the SVGACTRL framebuffer in the GRLIB IP library from Aeroflex Gaisler.
70
71config FB_CIRRUS
72 tristate "Cirrus Logic support"
73 depends on FB && (ZORRO || PCI)
74 select FB_CFB_FILLRECT
75 select FB_CFB_COPYAREA
76 select FB_CFB_IMAGEBLIT
77 select FB_IOMEM_FOPS
78 help
79 This enables support for Cirrus Logic GD542x/543x based boards on
80 Amiga: SD64, Piccolo, Picasso II/II+, Picasso IV, or EGS Spectrum.
81
82 If you have a PCI-based system, this enables support for these
83 chips: GD-543x, GD-544x, GD-5480.
84
85 Please read the file <file:Documentation/fb/cirrusfb.rst>.
86
87 Say N unless you have such a graphics board or plan to get one
88 before you next recompile the kernel.
89
90config FB_PM2
91 tristate "Permedia2 support"
92 depends on FB && ((AMIGA && BROKEN) || PCI)
93 select FB_CFB_FILLRECT
94 select FB_CFB_COPYAREA
95 select FB_CFB_IMAGEBLIT
96 select FB_IOMEM_FOPS
97 help
98 This is the frame buffer device driver for cards based on
99 the 3D Labs Permedia, Permedia 2 and Permedia 2V chips.
100 The driver was tested on the following cards:
101 Diamond FireGL 1000 PRO AGP
102 ELSA Gloria Synergy PCI
103 Appian Jeronimo PRO (both heads) PCI
104 3DLabs Oxygen ACX aka EONtronics Picasso P2 PCI
105 Techsource Raptor GFX-8P (aka Sun PGX-32) on SPARC
106 ASK Graphic Blaster Exxtreme AGP
107
108 To compile this driver as a module, choose M here: the
109 module will be called pm2fb.
110
111config FB_PM2_FIFO_DISCONNECT
112 bool "enable FIFO disconnect feature"
113 depends on FB_PM2 && PCI
114 help
115 Support the Permedia2 FIFO disconnect feature.
116
117config FB_ACORN
118 bool "Acorn VIDC support"
119 depends on (FB = y) && ARM && ARCH_ACORN
120 select FB_IOMEM_HELPERS
121 help
122 This is the frame buffer device driver for the Acorn VIDC graphics
123 hardware found in Acorn RISC PCs and other ARM-based machines. If
124 unsure, say N.
125
126config FB_CLPS711X
127 tristate "CLPS711X LCD support"
128 depends on FB && (ARCH_CLPS711X || COMPILE_TEST)
129 select FB_IOMEM_HELPERS
130 select FB_MODE_HELPERS
131 select LCD_CLASS_DEVICE
132 select VIDEOMODE_HELPERS
133 help
134 Say Y to enable the Framebuffer driver for the Cirrus Logic
135 CLPS711X CPUs.
136
137config FB_SA1100
138 bool "SA-1100 LCD support"
139 depends on (FB = y) && ARM && ARCH_SA1100
140 select FB_IOMEM_HELPERS
141 help
142 This is a framebuffer device for the SA-1100 LCD Controller.
143 See <http://www.linux-fbdev.org/> for information on framebuffer
144 devices.
145
146 If you plan to use the LCD display with your SA-1100 system, say
147 Y here.
148
149config FB_IMX
150 tristate "Freescale i.MX1/21/25/27 LCD support"
151 depends on FB && HAVE_CLK && HAS_IOMEM
152 depends on ARCH_MXC || COMPILE_TEST
153 select LCD_CLASS_DEVICE
154 select FB_IOMEM_HELPERS
155 select FB_MODE_HELPERS
156 select VIDEOMODE_HELPERS
157
158config FB_CYBER2000
159 tristate "CyberPro 2000/2010/5000 support"
160 depends on FB && PCI && (BROKEN || !SPARC64)
161 select FB_IOMEM_HELPERS
162 help
163 This enables support for the Integraphics CyberPro 20x0 and 5000
164 VGA chips used in the Rebel.com Netwinder and other machines.
165 Say Y if you have a NetWinder or a graphics card containing this
166 device, otherwise say N.
167
168config FB_CYBER2000_DDC
169 bool "DDC for CyberPro support"
170 depends on FB_CYBER2000
171 select FB_DDC
172 default y
173 help
174 Say Y here if you want DDC support for your CyberPro graphics
175 card. This is only I2C bus support, driver does not use EDID.
176
177config FB_CYBER2000_I2C
178 bool "CyberPro 2000/2010/5000 I2C support"
179 depends on FB_CYBER2000 && I2C && ARCH_NETWINDER
180 depends on I2C=y || FB_CYBER2000=m
181 select I2C_ALGOBIT
182 help
183 Enable support for the I2C video decoder interface on the
184 Integraphics CyberPro 20x0 and 5000 VGA chips. This is used
185 on the Netwinder machines for the SAA7111 video capture.
186
187config FB_APOLLO
188 bool
189 depends on (FB = y) && APOLLO
190 default y
191 select FB_CFB_FILLRECT
192 select FB_CFB_IMAGEBLIT
193 select FB_IOMEM_FOPS
194
195config FB_Q40
196 bool
197 depends on (FB = y) && Q40
198 default y
199 select FB_IOMEM_HELPERS
200
201config FB_AMIGA
202 tristate "Amiga native chipset support"
203 depends on FB && AMIGA
204 select FB_IOMEM_FOPS
205 help
206 This is the frame buffer device driver for the builtin graphics
207 chipset found in Amigas.
208
209 To compile this driver as a module, choose M here: the
210 module will be called amifb.
211
212config FB_AMIGA_OCS
213 bool "Amiga OCS chipset support"
214 depends on FB_AMIGA
215 help
216 This enables support for the original Agnus and Denise video chips,
217 found in the Amiga 1000 and most A500's and A2000's. If you intend
218 to run Linux on any of these systems, say Y; otherwise say N.
219
220config FB_AMIGA_ECS
221 bool "Amiga ECS chipset support"
222 depends on FB_AMIGA
223 help
224 This enables support for the Enhanced Chip Set, found in later
225 A500's, later A2000's, the A600, the A3000, the A3000T and CDTV. If
226 you intend to run Linux on any of these systems, say Y; otherwise
227 say N.
228
229config FB_AMIGA_AGA
230 bool "Amiga AGA chipset support"
231 depends on FB_AMIGA
232 help
233 This enables support for the Advanced Graphics Architecture (also
234 known as the AGA or AA) Chip Set, found in the A1200, A4000, A4000T
235 and CD32. If you intend to run Linux on any of these systems, say Y;
236 otherwise say N.
237
238config FB_FM2
239 bool "Amiga FrameMaster II/Rainbow II support"
240 depends on (FB = y) && ZORRO
241 select FB_IOMEM_HELPERS
242 help
243 This is the frame buffer device driver for the Amiga FrameMaster
244 card from BSC (exhibited 1992 but not shipped as a CBM product).
245
246config FB_ARC
247 tristate "Arc Monochrome LCD board support"
248 depends on FB && (X86 || COMPILE_TEST)
249 select FB_SYSMEM_HELPERS_DEFERRED
250 help
251 This enables support for the Arc Monochrome LCD board. The board
252 is based on the KS-108 lcd controller and is typically a matrix
253 of 2*n chips. This driver was tested with a 128x64 panel. This
254 driver supports it for use with x86 SBCs through a 16 bit GPIO
255 interface (8 bit data, 8 bit control). If you anticipate using
256 this driver, say Y or M; otherwise say N. You must specify the
257 GPIO IO address to be used for setting control and data.
258
259config FB_ATARI
260 bool "Atari native chipset support"
261 depends on (FB = y) && ATARI
262 select FB_CFB_FILLRECT
263 select FB_CFB_COPYAREA
264 select FB_CFB_IMAGEBLIT
265 select FB_IOMEM_FOPS
266 help
267 This is the frame buffer device driver for the builtin graphics
268 chipset found in Ataris.
269
270config FB_OF
271 tristate "Open Firmware frame buffer device support"
272 depends on FB && PPC && (!PPC_PSERIES || PCI)
273 depends on !DRM_OFDRM
274 select APERTURE_HELPERS
275 select FB_IOMEM_HELPERS
276 select FB_MACMODES
277 help
278 Say Y if you want support with Open Firmware for your graphics
279 board.
280
281config FB_CONTROL
282 bool "Apple \"control\" display support"
283 depends on (FB = y) && ((PPC_PMAC && PPC32) || COMPILE_TEST)
284 select FB_IOMEM_HELPERS
285 select FB_MACMODES
286 help
287 This driver supports a frame buffer for the graphics adapter in the
288 Power Macintosh 7300 and others.
289
290config FB_PLATINUM
291 bool "Apple \"platinum\" display support"
292 depends on (FB = y) && PPC_PMAC && PPC32
293 select FB_IOMEM_HELPERS
294 select FB_MACMODES
295 help
296 This driver supports a frame buffer for the "platinum" graphics
297 adapter in some Power Macintoshes.
298
299config FB_VALKYRIE
300 bool "Apple \"valkyrie\" display support"
301 depends on (FB = y) && (MAC || (PPC_PMAC && PPC32))
302 select FB_IOMEM_HELPERS
303 select FB_MACMODES
304 help
305 This driver supports a frame buffer for the "valkyrie" graphics
306 adapter in some Power Macintoshes.
307
308config FB_CT65550
309 bool "Chips 65550 display support"
310 depends on (FB = y) && PPC32 && PCI
311 select FB_IOMEM_HELPERS
312 help
313 This is the frame buffer device driver for the Chips & Technologies
314 65550 graphics chip in PowerBooks.
315
316config FB_ASILIANT
317 bool "Asiliant (Chips) 69000 display support"
318 depends on (FB = y) && PCI
319 select FB_IOMEM_HELPERS
320 help
321 This is the frame buffer device driver for the Asiliant 69030 chipset
322
323config FB_IMSTT
324 bool "IMS Twin Turbo display support"
325 depends on (FB = y) && PCI
326 select FB_CFB_IMAGEBLIT
327 select FB_IOMEM_FOPS
328 select FB_MACMODES if PPC_PMAC
329 help
330 The IMS Twin Turbo is a PCI-based frame buffer card bundled with
331 many Macintosh and compatible computers.
332
333config FB_VGA16
334 tristate "VGA 16-color graphics support"
335 depends on FB && X86
336 select APERTURE_HELPERS
337 select FB_CFB_FILLRECT
338 select FB_CFB_COPYAREA
339 select FB_CFB_IMAGEBLIT
340 select FB_IOMEM_FOPS
341 select VGASTATE
342 select FONT_8x16 if FRAMEBUFFER_CONSOLE
343 help
344 This is the frame buffer device driver for VGA 16 color graphic
345 cards. Say Y if you have such a card.
346
347 To compile this driver as a module, choose M here: the
348 module will be called vga16fb.
349
350config FB_STI
351 tristate "HP STI frame buffer device support"
352 depends on FB && PARISC
353 select FB_CFB_FILLRECT
354 select FB_CFB_COPYAREA
355 select FB_CFB_IMAGEBLIT
356 select FB_IOMEM_FOPS
357 select STI_CORE
358 default y
359 help
360 Enabling this option will implement the linux framebuffer device
361 using calls to the STI BIOS routines for initialisation.
362
363 If you enable this option, you will get a planar framebuffer device
364 /dev/fb which will work on the most common HP graphic cards of the
365 NGLE family, including the artist chips (in the 7xx and Bxxx series),
366 HCRX, HCRX24, CRX, CRX24 and VisEG series.
367
368 It is safe to enable this option, so you should probably say "Y".
369
370config FB_MAC
371 bool "Generic Macintosh display support"
372 depends on (FB = y) && MAC
373 select FB_IOMEM_HELPERS
374 select FB_MACMODES
375
376config FB_HP300
377 bool
378 depends on (FB = y) && DIO
379 select FB_CFB_IMAGEBLIT
380 select FB_IOMEM_FOPS
381 default y
382
383config FB_TGA
384 tristate "TGA/SFB+ framebuffer support"
385 depends on FB
386 depends on PCI || TC
387 depends on ALPHA || TC
388 select BITREVERSE
389 select FB_CFB_FILLRECT
390 select FB_CFB_COPYAREA
391 select FB_CFB_IMAGEBLIT
392 select FB_IOMEM_FOPS
393 help
394 This is the frame buffer device driver for generic TGA and SFB+
395 graphic cards. These include DEC ZLXp-E1, -E2 and -E3 PCI cards,
396 also known as PBXGA-A, -B and -C, and DEC ZLX-E1, -E2 and -E3
397 TURBOchannel cards, also known as PMAGD-A, -B and -C.
398
399 Due to hardware limitations ZLX-E2 and E3 cards are not supported
400 for DECstation 5000/200 systems. Additionally due to firmware
401 limitations these cards may cause troubles with booting DECstation
402 5000/240 and /260 systems, but are fully supported under Linux if
403 you manage to get it going. ;-)
404
405 Say Y if you have one of those.
406
407config FB_UVESA
408 tristate "Userspace VESA VGA graphics support"
409 depends on FB && CONNECTOR
410 depends on !UML
411 select FB_IOMEM_HELPERS
412 select FB_MODE_HELPERS
413 help
414 This is the frame buffer driver for generic VBE 2.0 compliant
415 graphic cards. It can also take advantage of VBE 3.0 features,
416 such as refresh rate adjustment.
417
418 This driver generally provides more features than vesafb but
419 requires a userspace helper application called 'v86d'. See
420 <file:Documentation/fb/uvesafb.rst> for more information.
421
422 If unsure, say N.
423
424config FB_VESA
425 bool "VESA VGA graphics support"
426 depends on (FB = y) && X86
427 select APERTURE_HELPERS
428 select FB_IOMEM_HELPERS
429 select SYSFB
430 help
431 This is the frame buffer device driver for generic VESA 2.0
432 compliant graphic cards. The older VESA 1.2 cards are not supported.
433 You will get a boot time penguin logo at no additional cost. Please
434 read <file:Documentation/fb/vesafb.rst>. If unsure, say Y.
435
436config FB_EFI
437 bool "EFI-based Framebuffer Support"
438 depends on (FB = y) && EFI
439 select APERTURE_HELPERS
440 select DRM_PANEL_ORIENTATION_QUIRKS
441 select FB_IOMEM_HELPERS
442 select SYSFB
443 help
444 This is the EFI frame buffer device driver. If the firmware on
445 your platform is EFI 1.10 or UEFI 2.0, select Y to add support for
446 using the EFI framebuffer as your console.
447
448config FB_N411
449 tristate "N411 Apollo/Hecuba devkit support"
450 depends on FB && X86 && MMU
451 select FB_HECUBA
452 help
453 This enables support for the Apollo display controller in its
454 Hecuba form using the n411 devkit.
455
456config FB_HGA
457 tristate "Hercules mono graphics support"
458 depends on FB && X86
459 select FB_IOMEM_FOPS
460 help
461 Say Y here if you have a Hercules mono graphics card.
462
463 To compile this driver as a module, choose M here: the
464 module will be called hgafb.
465
466 As this card technology is at least 25 years old,
467 most people will answer N here.
468
469config FB_GBE
470 bool "SGI Graphics Backend frame buffer support"
471 depends on (FB = y) && HAS_IOMEM
472 depends on SGI_IP32 || COMPILE_TEST
473 select FB_IOMEM_HELPERS
474 help
475 This is the frame buffer device driver for SGI Graphics Backend.
476 This chip is used in SGI O2 and Visual Workstation 320/540.
477
478config FB_GBE_MEM
479 int "Video memory size in MB"
480 depends on FB_GBE
481 default 4
482 help
483 This is the amount of memory reserved for the framebuffer,
484 which can be any value between 1MB and 8MB.
485
486config FB_SBUS
487 bool "SBUS and UPA framebuffers"
488 depends on (FB = y) && SPARC
489 help
490 Say Y if you want support for SBUS or UPA based frame buffer device.
491
492config FB_SBUS_HELPERS
493 bool
494 select FB_CFB_COPYAREA
495 select FB_CFB_FILLRECT
496 select FB_CFB_IMAGEBLIT
497 select FB_IOMEM_FOPS
498
499config FB_BW2
500 bool "BWtwo support"
501 depends on (FB = y) && (SPARC && FB_SBUS)
502 select FB_SBUS_HELPERS
503 help
504 This is the frame buffer device driver for the BWtwo frame buffer.
505
506config FB_CG3
507 bool "CGthree support"
508 depends on (FB = y) && (SPARC && FB_SBUS)
509 select FB_SBUS_HELPERS
510 help
511 This is the frame buffer device driver for the CGthree frame buffer.
512
513config FB_CG6
514 bool "CGsix (GX,TurboGX) support"
515 depends on (FB = y) && (SPARC && FB_SBUS)
516 select FB_CFB_COPYAREA
517 select FB_CFB_IMAGEBLIT
518 select FB_IOMEM_FOPS
519 help
520 This is the frame buffer device driver for the CGsix (GX, TurboGX)
521 frame buffer.
522
523config FB_FFB
524 bool "Creator/Creator3D/Elite3D support"
525 depends on FB_SBUS && SPARC64
526 select FB_CFB_COPYAREA
527 select FB_CFB_IMAGEBLIT
528 select FB_IOMEM_FOPS
529 help
530 This is the frame buffer device driver for the Creator, Creator3D,
531 and Elite3D graphics boards.
532
533config FB_TCX
534 bool "TCX (SS4/SS5 only) support"
535 depends on FB_SBUS
536 select FB_SBUS_HELPERS
537 help
538 This is the frame buffer device driver for the TCX 24/8bit frame
539 buffer.
540
541config FB_CG14
542 bool "CGfourteen (SX) support"
543 depends on FB_SBUS
544 select FB_SBUS_HELPERS
545 help
546 This is the frame buffer device driver for the CGfourteen frame
547 buffer on Desktop SPARCsystems with the SX graphics option.
548
549config FB_P9100
550 bool "P9100 (Sparcbook 3 only) support"
551 depends on FB_SBUS
552 select FB_SBUS_HELPERS
553 help
554 This is the frame buffer device driver for the P9100 card
555 supported on Sparcbook 3 machines.
556
557config FB_LEO
558 bool "Leo (ZX) support"
559 depends on FB_SBUS
560 select FB_SBUS_HELPERS
561 help
562 This is the frame buffer device driver for the SBUS-based Sun ZX
563 (leo) frame buffer cards.
564
565config FB_XVR500
566 bool "Sun XVR-500 3DLABS Wildcat support"
567 depends on (FB = y) && PCI && SPARC64
568 select FB_CFB_FILLRECT
569 select FB_CFB_COPYAREA
570 select FB_CFB_IMAGEBLIT
571 select FB_IOMEM_FOPS
572 help
573 This is the framebuffer device for the Sun XVR-500 and similar
574 graphics cards based upon the 3DLABS Wildcat chipset. The driver
575 only works on sparc64 systems where the system firmware has
576 mostly initialized the card already. It is treated as a
577 completely dumb framebuffer device.
578
579config FB_XVR2500
580 bool "Sun XVR-2500 3DLABS Wildcat support"
581 depends on (FB = y) && PCI && SPARC64
582 select FB_IOMEM_HELPERS
583 help
584 This is the framebuffer device for the Sun XVR-2500 and similar
585 graphics cards based upon the 3DLABS Wildcat chipset. The driver
586 only works on sparc64 systems where the system firmware has
587 mostly initialized the card already. It is treated as a
588 completely dumb framebuffer device.
589
590config FB_XVR1000
591 bool "Sun XVR-1000 support"
592 depends on (FB = y) && SPARC64
593 select FB_IOMEM_HELPERS
594 help
595 This is the framebuffer device for the Sun XVR-1000 and similar
596 graphics cards. The driver only works on sparc64 systems where
597 the system firmware has mostly initialized the card already. It
598 is treated as a completely dumb framebuffer device.
599
600config FB_PVR2
601 tristate "NEC PowerVR 2 display support"
602 depends on FB && HAS_IOMEM
603 depends on SH_DREAMCAST || COMPILE_TEST
604 select FB_CFB_FILLRECT
605 select FB_CFB_COPYAREA
606 select FB_CFB_IMAGEBLIT
607 select FB_IOMEM_FOPS
608 help
609 Say Y here if you have a PowerVR 2 card in your box. If you plan to
610 run linux on your Dreamcast, you will have to say Y here.
611 This driver may or may not work on other PowerVR 2 cards, but is
612 totally untested. Use at your own risk. If unsure, say N.
613
614 To compile this driver as a module, choose M here: the
615 module will be called pvr2fb.
616
617 You can pass several parameters to the driver at boot time or at
618 module load time. The parameters look like "video=pvr2:XXX", where
619 the meaning of XXX can be found at the end of the main source file
620 (<file:drivers/video/fbdev/pvr2fb.c>). Please see the file
621 <file:Documentation/fb/pvr2fb.rst>.
622
623config FB_OPENCORES
624 tristate "OpenCores VGA/LCD core 2.0 framebuffer support"
625 depends on FB && HAS_DMA
626 select FB_IOMEM_HELPERS
627 help
628 This enables support for the OpenCores VGA/LCD core.
629
630 The OpenCores VGA/LCD core is typically used together with
631 softcore CPUs (e.g. OpenRISC or Microblaze) or hard processor
632 systems (e.g. Altera socfpga or Xilinx Zynq) on FPGAs.
633
634 The source code and specification for the core is available at
635 <https://opencores.org/project,vga_lcd>
636
637config FB_S1D13XXX
638 tristate "Epson S1D13XXX framebuffer support"
639 depends on FB
640 select FB_CFB_FILLRECT
641 select FB_CFB_COPYAREA
642 select FB_CFB_IMAGEBLIT
643 select FB_IOMEM_FOPS
644 help
645 Support for S1D13XXX framebuffer device family (currently only
646 working with S1D13806). Product specs at
647 <https://vdc.epson.com/>
648
649config FB_ATMEL
650 tristate "AT91 LCD Controller support"
651 depends on FB && OF && HAVE_CLK && HAS_IOMEM
652 depends on HAVE_FB_ATMEL || COMPILE_TEST
653 select FB_BACKLIGHT
654 select FB_IOMEM_HELPERS
655 select FB_MODE_HELPERS
656 select VIDEOMODE_HELPERS
657 help
658 This enables support for the AT91 LCD Controller.
659
660config FB_NVIDIA
661 tristate "nVidia Framebuffer Support"
662 depends on FB && PCI
663 select FB_BACKLIGHT if FB_NVIDIA_BACKLIGHT
664 select FB_CFB_FILLRECT
665 select FB_CFB_COPYAREA
666 select FB_CFB_IMAGEBLIT
667 select FB_IOMEM_FOPS
668 select BITREVERSE
669 select VGASTATE
670 help
671 This driver supports graphics boards with the nVidia chips, TNT
672 and newer. For very old chipsets, such as the RIVA128, then use
673 the rivafb.
674 Say Y if you have such a graphics board.
675
676 To compile this driver as a module, choose M here: the
677 module will be called nvidiafb.
678
679config FB_NVIDIA_I2C
680 bool "Enable DDC Support"
681 depends on FB_NVIDIA
682 select FB_DDC
683 help
684 This enables I2C support for nVidia Chipsets. This is used
685 only for getting EDID information from the attached display
686 allowing for robust video mode handling and switching.
687
688 Because fbdev-2.6 requires that drivers must be able to
689 independently validate video mode parameters, you should say Y
690 here.
691
692config FB_NVIDIA_DEBUG
693 bool "Lots of debug output"
694 depends on FB_NVIDIA
695 help
696 Say Y here if you want the nVidia driver to output all sorts
697 of debugging information to provide to the maintainer when
698 something goes wrong.
699
700config FB_NVIDIA_BACKLIGHT
701 bool "Support for backlight control"
702 depends on FB_NVIDIA
703 default y
704 help
705 Say Y here if you want to control the backlight of your display.
706
707config FB_RIVA
708 tristate "nVidia Riva support"
709 depends on FB && PCI
710 select FB_BACKLIGHT if FB_RIVA_BACKLIGHT
711 select FB_CFB_FILLRECT
712 select FB_CFB_COPYAREA
713 select FB_CFB_IMAGEBLIT
714 select FB_IOMEM_FOPS
715 select FB_MODE_HELPERS
716 select BITREVERSE
717 select VGASTATE
718 help
719 This driver supports graphics boards with the nVidia Riva/Geforce
720 chips.
721 Say Y if you have such a graphics board.
722
723 To compile this driver as a module, choose M here: the
724 module will be called rivafb.
725
726config FB_RIVA_I2C
727 bool "Enable DDC Support"
728 depends on FB_RIVA
729 select FB_DDC
730 help
731 This enables I2C support for nVidia Chipsets. This is used
732 only for getting EDID information from the attached display
733 allowing for robust video mode handling and switching.
734
735 Because fbdev-2.6 requires that drivers must be able to
736 independently validate video mode parameters, you should say Y
737 here.
738
739config FB_RIVA_DEBUG
740 bool "Lots of debug output"
741 depends on FB_RIVA
742 help
743 Say Y here if you want the Riva driver to output all sorts
744 of debugging information to provide to the maintainer when
745 something goes wrong.
746
747config FB_RIVA_BACKLIGHT
748 bool "Support for backlight control"
749 depends on FB_RIVA
750 default y
751 help
752 Say Y here if you want to control the backlight of your display.
753
754config FB_I740
755 tristate "Intel740 support"
756 depends on FB && PCI
757 select FB_IOMEM_HELPERS
758 select FB_MODE_HELPERS
759 select VGASTATE
760 select FB_DDC
761 help
762 This driver supports graphics cards based on Intel740 chip.
763
764config FB_I810
765 tristate "Intel 810/815 support"
766 depends on FB && PCI && X86_32 && AGP_INTEL
767 select FB_IOMEM_FOPS
768 select FB_MODE_HELPERS
769 select VGASTATE
770 help
771 This driver supports the on-board graphics built in to the Intel 810
772 and 815 chipsets. Say Y if you have and plan to use such a board.
773
774 To compile this driver as a module, choose M here: the
775 module will be called i810fb.
776
777 For more information, please read
778 <file:Documentation/fb/intel810.rst>
779
780config FB_I810_GTF
781 bool "use VESA Generalized Timing Formula"
782 depends on FB_I810
783 help
784 If you say Y, then the VESA standard, Generalized Timing Formula
785 or GTF, will be used to calculate the required video timing values
786 per video mode. Since the GTF allows nondiscrete timings
787 (nondiscrete being a range of values as opposed to discrete being a
788 set of values), you'll be able to use any combination of horizontal
789 and vertical resolutions, and vertical refresh rates without having
790 to specify your own timing parameters. This is especially useful
791 to maximize the performance of an aging display, or if you just
792 have a display with nonstandard dimensions. A VESA compliant
793 monitor is recommended, but can still work with non-compliant ones.
794 If you need or want this, then select this option. The timings may
795 not be compliant with Intel's recommended values. Use at your own
796 risk.
797
798 If you say N, the driver will revert to discrete video timings
799 using a set recommended by Intel in their documentation.
800
801 If unsure, say N.
802
803config FB_I810_I2C
804 bool "Enable DDC Support"
805 depends on FB_I810 && FB_I810_GTF
806 select FB_DDC
807 help
808 Add DDC/I2C support for i810fb. This will allow the driver to get
809 display information, especially for monitors with fickle timings.
810
811 If unsure, say Y.
812
813config FB_MATROX
814 tristate "Matrox acceleration"
815 depends on FB && PCI
816 select FB_CFB_FILLRECT
817 select FB_CFB_COPYAREA
818 select FB_CFB_IMAGEBLIT
819 select FB_IOMEM_FOPS
820 select FB_TILEBLITTING
821 select FB_MACMODES if PPC_PMAC
822 help
823 Say Y here if you have a Matrox Millennium, Matrox Millennium II,
824 Matrox Mystique, Matrox Mystique 220, Matrox Productiva G100, Matrox
825 Mystique G200, Matrox Millennium G200, Matrox Marvel G200 video,
826 Matrox G400, G450 or G550 card in your box.
827
828 To compile this driver as a module, choose M here: the
829 module will be called matroxfb.
830
831 You can pass several parameters to the driver at boot time or at
832 module load time. The parameters look like "video=matroxfb:XXX", and
833 are described in <file:Documentation/fb/matroxfb.rst>.
834
835config FB_MATROX_MILLENIUM
836 bool "Millennium I/II support"
837 depends on FB_MATROX
838 help
839 Say Y here if you have a Matrox Millennium or Matrox Millennium II
840 video card. If you select "Advanced lowlevel driver options" below,
841 you should check 4 bpp packed pixel, 8 bpp packed pixel, 16 bpp
842 packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can
843 also use font widths different from 8.
844
845config FB_MATROX_MYSTIQUE
846 bool "Mystique support"
847 depends on FB_MATROX
848 help
849 Say Y here if you have a Matrox Mystique or Matrox Mystique 220
850 video card. If you select "Advanced lowlevel driver options" below,
851 you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp
852 packed pixel and 32 bpp packed pixel. You can also use font widths
853 different from 8.
854
855config FB_MATROX_G
856 bool "G100/G200/G400/G450/G550 support"
857 depends on FB_MATROX
858 help
859 Say Y here if you have a Matrox G100, G200, G400, G450 or G550 based
860 video card. If you select "Advanced lowlevel driver options", you
861 should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed
862 pixel and 32 bpp packed pixel. You can also use font widths
863 different from 8.
864
865 If you need support for G400 secondary head, you must say Y to
866 "Matrox I2C support" and "G400 second head support" right below.
867 G450/G550 secondary head and digital output are supported without
868 additional modules.
869
870 The driver starts in monitor mode. You must use the matroxset tool
871 (available at <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to
872 swap primary and secondary head outputs, or to change output mode.
873 Secondary head driver always start in 640x480 resolution and you
874 must use fbset to change it.
875
876 Do not forget that second head supports only 16 and 32 bpp
877 packed pixels, so it is a good idea to compile them into the kernel
878 too. You can use only some font widths, as the driver uses generic
879 painting procedures (the secondary head does not use acceleration
880 engine).
881
882 G450/G550 hardware can display TV picture only from secondary CRTC,
883 and it performs no scaling, so picture must have 525 or 625 lines.
884
885config FB_MATROX_I2C
886 tristate "Matrox I2C support"
887 depends on FB_MATROX
888 select FB_DDC
889 help
890 This drivers creates I2C buses which are needed for accessing the
891 DDC (I2C) bus present on all Matroxes, an I2C bus which
892 interconnects Matrox optional devices, like MGA-TVO on G200 and
893 G400, and the secondary head DDC bus, present on G400 only.
894
895 You can say Y or M here if you want to experiment with monitor
896 detection code. You must say Y or M here if you want to use either
897 second head of G400 or MGA-TVO on G200 or G400.
898
899 If you compile it as module, it will create a module named
900 i2c-matroxfb.
901
902config FB_MATROX_MAVEN
903 tristate "G400 second head support"
904 depends on FB_MATROX_G && FB_MATROX_I2C
905 select FB_IOMEM_HELPERS
906 help
907 WARNING !!! This support does not work with G450 !!!
908
909 Say Y or M here if you want to use a secondary head (meaning two
910 monitors in parallel) on G400 or MGA-TVO add-on on G200. Secondary
911 head is not compatible with accelerated XFree 3.3.x SVGA servers -
912 secondary head output is blanked while you are in X. With XFree
913 3.9.17 preview you can use both heads if you use SVGA over fbdev or
914 the fbdev driver on first head and the fbdev driver on second head.
915
916 If you compile it as module, two modules are created,
917 matroxfb_crtc2 and matroxfb_maven. Matroxfb_maven is needed for
918 both G200 and G400, matroxfb_crtc2 is needed only by G400. You must
919 also load i2c-matroxfb to get it to run.
920
921 The driver starts in monitor mode and you must use the matroxset
922 tool (available at
923 <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to switch it to
924 PAL or NTSC or to swap primary and secondary head outputs.
925 Secondary head driver also always start in 640x480 resolution, you
926 must use fbset to change it.
927
928 Also do not forget that second head supports only 16 and 32 bpp
929 packed pixels, so it is a good idea to compile them into the kernel
930 too. You can use only some font widths, as the driver uses generic
931 painting procedures (the secondary head does not use acceleration
932 engine).
933
934config FB_RADEON
935 tristate "ATI Radeon display support"
936 depends on FB && PCI
937 select FB_BACKLIGHT if FB_RADEON_BACKLIGHT
938 select FB_CFB_FILLRECT
939 select FB_CFB_COPYAREA
940 select FB_CFB_IMAGEBLIT
941 select FB_IOMEM_FOPS
942 select FB_MACMODES if PPC
943 select FB_MODE_HELPERS
944 help
945 Choose this option if you want to use an ATI Radeon graphics card as
946 a framebuffer device. There are both PCI and AGP versions. You
947 don't need to choose this to run the Radeon in plain VGA mode.
948
949 There is a product page at
950 https://products.amd.com/en-us/GraphicCardResult.aspx
951
952config FB_RADEON_I2C
953 bool "DDC/I2C for ATI Radeon support"
954 depends on FB_RADEON
955 select FB_DDC
956 default y
957 help
958 Say Y here if you want DDC/I2C support for your Radeon board.
959
960config FB_RADEON_BACKLIGHT
961 bool "Support for backlight control"
962 depends on FB_RADEON
963 default y
964 help
965 Say Y here if you want to control the backlight of your display.
966
967config FB_RADEON_DEBUG
968 bool "Lots of debug output from Radeon driver"
969 depends on FB_RADEON
970 help
971 Say Y here if you want the Radeon driver to output all sorts
972 of debugging information to provide to the maintainer when
973 something goes wrong.
974
975config FB_ATY128
976 tristate "ATI Rage128 display support"
977 depends on FB && PCI
978 select FB_BACKLIGHT if FB_ATY128_BACKLIGHT
979 select FB_IOMEM_HELPERS
980 select FB_MACMODES if PPC_PMAC
981 help
982 This driver supports graphics boards with the ATI Rage128 chips.
983 Say Y if you have such a graphics board and read
984 <file:Documentation/fb/aty128fb.rst>.
985
986 To compile this driver as a module, choose M here: the
987 module will be called aty128fb.
988
989config FB_ATY128_BACKLIGHT
990 bool "Support for backlight control"
991 depends on FB_ATY128
992 default y
993 help
994 Say Y here if you want to control the backlight of your display.
995
996config FB_ATY
997 tristate "ATI Mach64 display support" if PCI || ATARI
998 depends on FB && !SPARC32
999 select FB_CFB_FILLRECT
1000 select FB_CFB_COPYAREA
1001 select FB_CFB_IMAGEBLIT
1002 select FB_BACKLIGHT if FB_ATY_BACKLIGHT
1003 select FB_IOMEM_FOPS
1004 select FB_MACMODES if PPC
1005 select FB_ATY_CT if SPARC64 && PCI
1006 help
1007 This driver supports graphics boards with the ATI Mach64 chips.
1008 Say Y if you have such a graphics board.
1009
1010 To compile this driver as a module, choose M here: the
1011 module will be called atyfb.
1012
1013config FB_ATY_CT
1014 bool "Mach64 CT/VT/GT/LT (incl. 3D RAGE) support"
1015 depends on PCI && FB_ATY
1016 help
1017 Say Y here to support use of ATI's 64-bit Rage boards (or other
1018 boards based on the Mach64 CT, VT, GT, and LT chipsets) as a
1019 framebuffer device. The ATI product support page for these boards
1020 is at <http://support.ati.com/products/pc/mach64/mach64.html>.
1021
1022config FB_ATY_GENERIC_LCD
1023 bool "Mach64 generic LCD support"
1024 depends on FB_ATY_CT
1025 help
1026 Say Y if you have a laptop with an ATI Rage LT PRO, Rage Mobility,
1027 Rage XC, or Rage XL chipset.
1028
1029config FB_ATY_GX
1030 bool "Mach64 GX support" if PCI
1031 depends on FB_ATY
1032 default y if ATARI
1033 help
1034 Say Y here to support use of the ATI Mach64 Graphics Expression
1035 board (or other boards based on the Mach64 GX chipset) as a
1036 framebuffer device. The ATI product support page for these boards
1037 is at
1038 <http://support.ati.com/products/pc/mach64/graphics_xpression.html>.
1039
1040config FB_ATY_BACKLIGHT
1041 bool "Support for backlight control"
1042 depends on FB_ATY
1043 default y
1044 help
1045 Say Y here if you want to control the backlight of your display.
1046
1047config FB_S3
1048 tristate "S3 Trio/Virge support"
1049 depends on FB && PCI
1050 select FB_CFB_FILLRECT
1051 select FB_CFB_COPYAREA
1052 select FB_CFB_IMAGEBLIT
1053 select FB_IOMEM_FOPS
1054 select FB_TILEBLITTING
1055 select FB_SVGALIB
1056 select VGASTATE
1057 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1058 help
1059 Driver for graphics boards with S3 Trio / S3 Virge chip.
1060
1061config FB_S3_DDC
1062 bool "DDC for S3 support"
1063 depends on FB_S3
1064 select FB_DDC
1065 default y
1066 help
1067 Say Y here if you want DDC support for your S3 graphics card.
1068
1069config FB_SAVAGE
1070 tristate "S3 Savage support"
1071 depends on FB && PCI
1072 select FB_CFB_FILLRECT
1073 select FB_CFB_COPYAREA
1074 select FB_CFB_IMAGEBLIT
1075 select FB_IOMEM_FOPS
1076 select FB_MODE_HELPERS
1077 select VGASTATE
1078 help
1079 This driver supports notebooks and computers with S3 Savage PCI/AGP
1080 chips.
1081
1082 Say Y if you have such a graphics card.
1083
1084 To compile this driver as a module, choose M here; the module
1085 will be called savagefb.
1086
1087config FB_SAVAGE_I2C
1088 bool "Enable DDC2 Support"
1089 depends on FB_SAVAGE
1090 select FB_DDC
1091 help
1092 This enables I2C support for S3 Savage Chipsets. This is used
1093 only for getting EDID information from the attached display
1094 allowing for robust video mode handling and switching.
1095
1096 Because fbdev-2.6 requires that drivers must be able to
1097 independently validate video mode parameters, you should say Y
1098 here.
1099
1100config FB_SAVAGE_ACCEL
1101 bool "Enable Console Acceleration"
1102 depends on FB_SAVAGE
1103 help
1104 This option will compile in console acceleration support. If
1105 the resulting framebuffer console has bothersome glitches, then
1106 choose N here.
1107
1108config FB_SIS
1109 tristate "SiS/XGI display support"
1110 depends on FB && PCI
1111 select BOOT_VESA_SUPPORT if FB_SIS = y
1112 select FB_CFB_FILLRECT
1113 select FB_CFB_COPYAREA
1114 select FB_CFB_IMAGEBLIT
1115 select FB_IOMEM_FOPS
1116 select FB_SIS_300 if !FB_SIS_315
1117 help
1118 This is the frame buffer device driver for the SiS 300, 315, 330
1119 and 340 series as well as XGI V3XT, V5, V8, Z7 graphics chipsets.
1120 Specs available at <https://www.sis.com> and <http://www.xgitech.com>.
1121
1122 To compile this driver as a module, choose M here; the module
1123 will be called sisfb.
1124
1125config FB_SIS_300
1126 bool "SiS 300 series support"
1127 depends on FB_SIS
1128 help
1129 Say Y here to support use of the SiS 300/305, 540, 630 and 730.
1130
1131config FB_SIS_315
1132 bool "SiS 315/330/340 series and XGI support"
1133 depends on FB_SIS
1134 help
1135 Say Y here to support use of the SiS 315, 330 and 340 series
1136 (315/H/PRO, 55x, 650, 651, 740, 330, 661, 741, 760, 761) as well
1137 as XGI V3XT, V5, V8 and Z7.
1138
1139config FB_VIA
1140 tristate "VIA UniChrome (Pro) and Chrome9 display support"
1141 depends on FB && PCI && GPIOLIB && I2C && (X86 || COMPILE_TEST)
1142 select FB_CFB_FILLRECT
1143 select FB_CFB_COPYAREA
1144 select FB_CFB_IMAGEBLIT
1145 select FB_IOMEM_FOPS
1146 select I2C_ALGOBIT
1147 help
1148 This is the frame buffer device driver for Graphics chips of VIA
1149 UniChrome (Pro) Family (CLE266,PM800/CN400,P4M800CE/P4M800Pro/
1150 CN700/VN800,CX700/VX700,P4M890) and Chrome9 Family (K8M890,CN896
1151 /P4M900,VX800)
1152 Say Y if you have a VIA UniChrome graphics board.
1153
1154 To compile this driver as a module, choose M here: the
1155 module will be called viafb.
1156
1157if FB_VIA
1158
1159config FB_VIA_DIRECT_PROCFS
1160 bool "direct hardware access via procfs (DEPRECATED)(DANGEROUS)"
1161 help
1162 Allow direct hardware access to some output registers via procfs.
1163 This is dangerous but may provide the only chance to get the
1164 correct output device configuration.
1165 Its use is strongly discouraged.
1166
1167config FB_VIA_X_COMPATIBILITY
1168 bool "X server compatibility"
1169 help
1170 This option reduces the functionality (power saving, ...) of the
1171 framebuffer to avoid negative impact on the OpenChrome X server.
1172 If you use any X server other than fbdev you should enable this
1173 otherwise it should be safe to disable it and allow using all
1174 features.
1175
1176endif
1177
1178config FB_NEOMAGIC
1179 tristate "NeoMagic display support"
1180 depends on FB && PCI
1181 select FB_CFB_FILLRECT
1182 select FB_CFB_COPYAREA
1183 select FB_CFB_IMAGEBLIT
1184 select FB_IOMEM_FOPS
1185 select FB_MODE_HELPERS
1186 select VGASTATE
1187 help
1188 This driver supports notebooks with NeoMagic PCI chips.
1189 Say Y if you have such a graphics card.
1190
1191 To compile this driver as a module, choose M here: the
1192 module will be called neofb.
1193
1194config FB_KYRO
1195 tristate "IMG Kyro support"
1196 depends on FB && PCI
1197 select FB_IOMEM_HELPERS
1198 help
1199 Say Y here if you have a STG4000 / Kyro / PowerVR 3 based
1200 graphics board.
1201
1202 To compile this driver as a module, choose M here: the
1203 module will be called kyrofb.
1204
1205config FB_3DFX
1206 tristate "3Dfx Banshee/Voodoo3/Voodoo5 display support"
1207 depends on FB && PCI
1208 select FB_CFB_FILLRECT
1209 select FB_CFB_COPYAREA
1210 select FB_CFB_IMAGEBLIT
1211 select FB_IOMEM_FOPS
1212 select FB_MODE_HELPERS
1213 help
1214 This driver supports graphics boards with the 3Dfx Banshee,
1215 Voodoo3 or VSA-100 (aka Voodoo4/5) chips. Say Y if you have
1216 such a graphics board.
1217
1218 To compile this driver as a module, choose M here: the
1219 module will be called tdfxfb.
1220
1221config FB_3DFX_ACCEL
1222 bool "3Dfx Acceleration functions"
1223 depends on FB_3DFX
1224 help
1225 This will compile the 3Dfx Banshee/Voodoo3/VSA-100 frame buffer
1226 device driver with acceleration functions.
1227
1228config FB_3DFX_I2C
1229 bool "Enable DDC/I2C support"
1230 depends on FB_3DFX
1231 select FB_DDC
1232 default y
1233 help
1234 Say Y here if you want DDC/I2C support for your 3dfx Voodoo3.
1235
1236config FB_VOODOO1
1237 tristate "3Dfx Voodoo Graphics (sst1) support"
1238 depends on FB && PCI
1239 depends on FB_DEVICE
1240 select FB_IOMEM_HELPERS
1241 help
1242 Say Y here if you have a 3Dfx Voodoo Graphics (Voodoo1/sst1) or
1243 Voodoo2 (cvg) based graphics card.
1244
1245 To compile this driver as a module, choose M here: the
1246 module will be called sstfb.
1247
1248 WARNING: Do not use any application that uses the 3D engine
1249 (namely glide) while using this driver.
1250 Please read the <file:Documentation/fb/sstfb.rst> for supported
1251 options and other important info support.
1252
1253config FB_VT8623
1254 tristate "VIA VT8623 support"
1255 depends on FB && PCI
1256 select FB_CFB_FILLRECT
1257 select FB_CFB_COPYAREA
1258 select FB_CFB_IMAGEBLIT
1259 select FB_IOMEM_FOPS
1260 select FB_TILEBLITTING
1261 select FB_SVGALIB
1262 select VGASTATE
1263 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1264 help
1265 Driver for CastleRock integrated graphics core in the
1266 VIA VT8623 [Apollo CLE266] chipset.
1267
1268config FB_TRIDENT
1269 tristate "Trident/CyberXXX/CyberBlade support"
1270 depends on FB && PCI
1271 select FB_CFB_FILLRECT
1272 select FB_CFB_COPYAREA
1273 select FB_CFB_IMAGEBLIT
1274 select FB_DDC
1275 select FB_IOMEM_FOPS
1276 select FB_MODE_HELPERS
1277 help
1278 This is the frame buffer device driver for Trident PCI/AGP chipsets.
1279 Supported chipset families are TGUI 9440/96XX, 3DImage, Blade3D
1280 and Blade XP.
1281 There are also integrated versions of these chips called CyberXXXX,
1282 CyberImage or CyberBlade. These chips are mostly found in laptops
1283 but also on some motherboards including early VIA EPIA motherboards.
1284 For more information, read <file:Documentation/fb/tridentfb.rst>
1285
1286 Say Y if you have such a graphics board.
1287
1288 To compile this driver as a module, choose M here: the
1289 module will be called tridentfb.
1290
1291config FB_ARK
1292 tristate "ARK 2000PV support"
1293 depends on FB && PCI
1294 select FB_CFB_FILLRECT
1295 select FB_CFB_COPYAREA
1296 select FB_CFB_IMAGEBLIT
1297 select FB_IOMEM_FOPS
1298 select FB_TILEBLITTING
1299 select FB_SVGALIB
1300 select VGASTATE
1301 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1302 help
1303 Driver for PCI graphics boards with ARK 2000PV chip
1304 and ICS 5342 RAMDAC.
1305
1306config FB_PM3
1307 tristate "Permedia3 support"
1308 depends on FB && PCI
1309 select FB_CFB_FILLRECT
1310 select FB_CFB_COPYAREA
1311 select FB_CFB_IMAGEBLIT
1312 select FB_IOMEM_FOPS
1313 help
1314 This is the frame buffer device driver for the 3DLabs Permedia3
1315 chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 &
1316 similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000
1317 and maybe other boards.
1318
1319config FB_CARMINE
1320 tristate "Fujitsu carmine frame buffer support"
1321 depends on FB && PCI
1322 select FB_IOMEM_HELPERS
1323 help
1324 This is the frame buffer device driver for the Fujitsu Carmine chip.
1325 The driver provides two independent frame buffer devices.
1326
1327choice
1328 depends on FB_CARMINE
1329 prompt "DRAM timing"
1330 default FB_CARMINE_DRAM_EVAL
1331
1332config FB_CARMINE_DRAM_EVAL
1333 bool "Eval board timings"
1334 help
1335 Use timings which work on the eval card.
1336
1337config CARMINE_DRAM_CUSTOM
1338 bool "Custom board timings"
1339 help
1340 Use custom board timings.
1341endchoice
1342
1343config FB_AU1100
1344 bool "Au1100 LCD Driver"
1345 depends on (FB = y) && MIPS_ALCHEMY
1346 select FB_IOMEM_HELPERS
1347 help
1348 This is the framebuffer driver for the AMD Au1100 SOC. It can drive
1349 various panels and CRTs by passing in kernel cmd line option
1350 au1100fb:panel=<name>.
1351
1352config FB_AU1200
1353 bool "Au1200/Au1300 LCD Driver"
1354 depends on (FB = y) && MIPS_ALCHEMY
1355 select FB_DMAMEM_HELPERS
1356 help
1357 This is the framebuffer driver for the Au1200/Au1300 SOCs.
1358 It can drive various panels and CRTs by passing in kernel cmd line
1359 option au1200fb:panel=<name>.
1360
1361config FB_VT8500
1362 bool "VIA VT8500 framebuffer support"
1363 depends on (FB = y) && ARM && ARCH_VT8500
1364 select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS)
1365 select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS)
1366 select FB_SYS_IMAGEBLIT
1367 select FB_SYSMEM_FOPS
1368 select FB_MODE_HELPERS
1369 select VIDEOMODE_HELPERS
1370 help
1371 This is the framebuffer driver for VIA VT8500 integrated LCD
1372 controller.
1373
1374config FB_WM8505
1375 bool "Wondermedia WM8xxx-series frame buffer support"
1376 depends on (FB = y) && HAS_IOMEM && (ARCH_VT8500 || COMPILE_TEST)
1377 select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS)
1378 select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS)
1379 select FB_SYS_IMAGEBLIT
1380 select FB_SYSMEM_FOPS
1381 select FB_MODE_HELPERS
1382 select VIDEOMODE_HELPERS
1383 help
1384 This is the framebuffer driver for WonderMedia WM8xxx-series
1385 integrated LCD controller. This driver covers the WM8505, WM8650
1386 and WM8850 SoCs.
1387
1388config FB_WMT_GE_ROPS
1389 bool "VT8500/WM8xxx accelerated raster ops support"
1390 depends on (FB = y) && (FB_VT8500 || FB_WM8505)
1391 help
1392 This adds support for accelerated raster operations on the
1393 VIA VT8500 and Wondermedia 85xx series SoCs.
1394
1395source "drivers/video/fbdev/geode/Kconfig"
1396
1397config FB_HIT
1398 tristate "HD64461 Frame Buffer support"
1399 depends on FB && HD64461
1400 select FB_CFB_FILLRECT
1401 select FB_CFB_IMAGEBLIT
1402 select FB_IOMEM_FOPS
1403 help
1404 This is the frame buffer device driver for the Hitachi HD64461 LCD
1405 frame buffer card.
1406
1407config FB_PMAG_AA
1408 tristate "PMAG-AA TURBOchannel framebuffer support"
1409 depends on FB && TC
1410 select FB_IOMEM_HELPERS
1411 help
1412 Support for the PMAG-AA TURBOchannel framebuffer card (1280x1024x1)
1413 used mainly in the MIPS-based DECstation series.
1414
1415config FB_PMAG_BA
1416 tristate "PMAG-BA TURBOchannel framebuffer support"
1417 depends on FB && TC
1418 select FB_IOMEM_HELPERS
1419 help
1420 Support for the PMAG-BA TURBOchannel framebuffer card (1024x864x8)
1421 used mainly in the MIPS-based DECstation series.
1422
1423config FB_PMAGB_B
1424 tristate "PMAGB-B TURBOchannel framebuffer support"
1425 depends on FB && TC
1426 select FB_IOMEM_HELPERS
1427 help
1428 Support for the PMAGB-B TURBOchannel framebuffer card used mainly
1429 in the MIPS-based DECstation series. The card is currently only
1430 supported in 1280x1024x8 mode.
1431
1432config FB_MAXINE
1433 bool "Maxine (Personal DECstation) onboard framebuffer support"
1434 depends on (FB = y) && MACH_DECSTATION
1435 select FB_IOMEM_HELPERS
1436 help
1437 Support for the onboard framebuffer (1024x768x8) in the Personal
1438 DECstation series (Personal DECstation 5000/20, /25, /33, /50,
1439 Codename "Maxine").
1440
1441config FB_G364
1442 bool "G364 frame buffer support"
1443 depends on (FB = y) && (MIPS_MAGNUM_4000 || OLIVETTI_M700)
1444 select FB_IOMEM_HELPERS
1445 help
1446 The G364 driver is the framebuffer used in MIPS Magnum 4000 and
1447 Olivetti M700-10 systems.
1448
1449config FB_68328
1450 bool "Motorola 68328 native frame buffer support"
1451 depends on (FB = y) && (M68328 || M68EZ328 || M68VZ328)
1452 select FB_IOMEM_HELPERS
1453 help
1454 Say Y here if you want to support the built-in frame buffer of
1455 the Motorola 68328 CPU family.
1456
1457config FB_PXA168
1458 tristate "PXA168/910 LCD framebuffer support"
1459 depends on FB && HAVE_CLK && HAS_IOMEM
1460 depends on CPU_PXA168 || CPU_PXA910 || COMPILE_TEST
1461 select FB_IOMEM_HELPERS
1462 help
1463 Frame buffer driver for the built-in LCD controller in the Marvell
1464 MMP processor.
1465
1466config FB_PXA
1467 tristate "PXA LCD framebuffer support"
1468 depends on FB && ARCH_PXA
1469 select FB_IOMEM_HELPERS
1470 select VIDEOMODE_HELPERS if OF
1471 select FB_MODE_HELPERS if OF
1472 help
1473 Frame buffer driver for the built-in LCD controller in the Intel
1474 PXA2x0 processor.
1475
1476 This driver is also available as a module ( = code which can be
1477 inserted and removed from the running kernel whenever you want). The
1478 module will be called pxafb. If you want to compile it as a module,
1479 say M here and read <file:Documentation/kbuild/modules.rst>.
1480
1481 If unsure, say N.
1482
1483config FB_PXA_OVERLAY
1484 bool "Support PXA27x/PXA3xx Overlay(s) as framebuffer"
1485 depends on FB_PXA && (PXA27x || PXA3xx)
1486
1487config FB_PXA_SMARTPANEL
1488 bool "PXA Smartpanel LCD support"
1489 depends on FB_PXA
1490
1491config FB_PXA_PARAMETERS
1492 bool "PXA LCD command line parameters"
1493 depends on FB_PXA
1494 help
1495 Enable the use of kernel command line or module parameters
1496 to configure the physical properties of the LCD panel when
1497 using the PXA LCD driver.
1498
1499 This option allows you to override the panel parameters
1500 supplied by the platform in order to support multiple
1501 different models of flatpanel. If you will only be using a
1502 single model of flatpanel then you can safely leave this
1503 option disabled.
1504
1505 <file:Documentation/fb/pxafb.rst> describes the available parameters.
1506
1507config PXA3XX_GCU
1508 tristate "PXA3xx 2D graphics accelerator driver"
1509 depends on FB_PXA
1510 help
1511 Kernelspace driver for the 2D graphics controller unit (GCU)
1512 found on PXA3xx processors. There is a counterpart driver in the
1513 DirectFB suite, see http://www.directfb.org/
1514
1515 If you compile this as a module, it will be called pxa3xx_gcu.
1516
1517config FB_FSL_DIU
1518 tristate "Freescale DIU framebuffer support"
1519 depends on FB && FSL_SOC
1520 select FB_IOMEM_HELPERS
1521 select FB_MODE_HELPERS
1522 select PPC_LIB_RHEAP
1523 help
1524 Framebuffer driver for the Freescale SoC DIU
1525
1526config FB_SH_MOBILE_LCDC
1527 tristate "SuperH Mobile LCDC framebuffer support"
1528 depends on FB && HAVE_CLK && HAS_IOMEM
1529 depends on SUPERH || COMPILE_TEST
1530 depends on FB_DEVICE
1531 select FB_BACKLIGHT
1532 select FB_DEFERRED_IO
1533 select FB_DMAMEM_HELPERS
1534 help
1535 Frame buffer driver for the on-chip SH-Mobile LCD controller.
1536
1537config FB_S3C
1538 tristate "Samsung S3C framebuffer support"
1539 depends on FB && HAVE_CLK && HAS_IOMEM
1540 depends on ARCH_S3C64XX || COMPILE_TEST
1541 select FB_IOMEM_HELPERS
1542 help
1543 Frame buffer driver for the built-in FB controller in the Samsung
1544 SoC line such as the S3C6400 and S3C6410.
1545
1546 These chips all have the same basic framebuffer design with the
1547 actual capabilities depending on the chip. The S3C6400
1548 and S3C6410 support 4 hardware windows.
1549
1550 Currently the support is only for the S3C6400 and S3C6410 SoCs.
1551
1552config FB_S3C_DEBUG_REGWRITE
1553 bool "Debug register writes"
1554 depends on FB_S3C
1555 help
1556 Show all register writes via pr_debug()
1557
1558config FB_SM501
1559 tristate "Silicon Motion SM501 framebuffer support"
1560 depends on FB && MFD_SM501
1561 select FB_CFB_FILLRECT
1562 select FB_CFB_COPYAREA
1563 select FB_CFB_IMAGEBLIT
1564 select FB_IOMEM_FOPS
1565 help
1566 Frame buffer driver for the CRT and LCD controllers in the Silicon
1567 Motion SM501.
1568
1569 This driver is also available as a module ( = code which can be
1570 inserted and removed from the running kernel whenever you want). The
1571 module will be called sm501fb. If you want to compile it as a module,
1572 say M here and read <file:Documentation/kbuild/modules.rst>.
1573
1574 If unsure, say N.
1575
1576config FB_SMSCUFX
1577 tristate "SMSC UFX6000/7000 USB Framebuffer support"
1578 depends on FB && USB
1579 select FB_MODE_HELPERS
1580 select FB_SYSMEM_HELPERS_DEFERRED
1581 help
1582 This is a kernel framebuffer driver for SMSC UFX USB devices.
1583 Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and
1584 mplayer -vo fbdev. Supports both UFX6000 (USB 2.0) and UFX7000
1585 (USB 3.0) devices.
1586 To compile as a module, choose M here: the module name is smscufx.
1587
1588config FB_UDL
1589 tristate "Displaylink USB Framebuffer support"
1590 depends on FB && USB
1591 depends on FB_DEVICE
1592 select FB_MODE_HELPERS
1593 select FB_SYSMEM_HELPERS_DEFERRED
1594 help
1595 This is a kernel framebuffer driver for DisplayLink USB devices.
1596 Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and
1597 mplayer -vo fbdev. Supports all USB 2.0 era DisplayLink devices.
1598 To compile as a module, choose M here: the module name is udlfb.
1599
1600config FB_IBM_GXT4500
1601 tristate "Framebuffer support for IBM GXT4000P/4500P/6000P/6500P adaptors"
1602 depends on FB
1603 select FB_IOMEM_HELPERS
1604 help
1605 Say Y here to enable support for the IBM GXT4000P/6000P and
1606 GXT4500P/6500P display adaptor based on Raster Engine RC1000,
1607 found on some IBM System P (pSeries) machines. This driver
1608 doesn't use Geometry Engine GT1000. This driver also supports
1609 AGP Fire GL2/3/4 cards on x86.
1610
1611config FB_PS3
1612 tristate "PS3 GPU framebuffer driver"
1613 depends on FB && PS3_PS3AV
1614 select FB_SYSMEM_HELPERS
1615 help
1616 Include support for the virtual frame buffer in the PS3 platform.
1617
1618config FB_PS3_DEFAULT_SIZE_M
1619 int "PS3 default frame buffer size (in MiB)"
1620 depends on FB_PS3
1621 default 9
1622 help
1623 This is the default size (in MiB) of the virtual frame buffer in
1624 the PS3.
1625 The default value can be overridden on the kernel command line
1626 using the "ps3fb" option (e.g. "ps3fb=9M");
1627
1628config FB_XILINX
1629 tristate "Xilinx frame buffer support"
1630 depends on FB && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
1631 select FB_IOMEM_HELPERS
1632 help
1633 Include support for the Xilinx ML300/ML403 reference design
1634 framebuffer. ML300 carries a 640*480 LCD display on the board,
1635 ML403 uses a standard DB15 VGA connector.
1636
1637config FB_GOLDFISH
1638 tristate "Goldfish Framebuffer"
1639 depends on FB
1640 depends on GOLDFISH || COMPILE_TEST
1641 select FB_IOMEM_HELPERS
1642 help
1643 Framebuffer driver for Goldfish Virtual Platform
1644
1645config FB_COBALT
1646 tristate "Cobalt server LCD frame buffer support"
1647 depends on FB && MIPS_COBALT
1648 select FB_IOMEM_HELPERS
1649
1650config FB_SH7760
1651 bool "SH7760/SH7763/SH7720/SH7721 LCDC support"
1652 depends on FB=y && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \
1653 || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721)
1654 select FB_IOMEM_HELPERS
1655 help
1656 Support for the SH7760/SH7763/SH7720/SH7721 integrated
1657 (D)STN/TFT LCD Controller.
1658 Supports display resolutions up to 1024x1024 pixel, grayscale and
1659 color operation, with depths ranging from 1 bpp to 8 bpp monochrome
1660 and 8, 15 or 16 bpp color; 90 degrees clockwise display rotation for
1661 panels <= 320 pixel horizontal resolution.
1662
1663config FB_DA8XX
1664 tristate "DA8xx/OMAP-L1xx/AM335x Framebuffer support"
1665 depends on FB && HAVE_CLK && HAS_IOMEM
1666 depends on ARCH_DAVINCI_DA8XX || SOC_AM33XX || COMPILE_TEST
1667 select FB_CFB_REV_PIXELS_IN_BYTE
1668 select FB_IOMEM_HELPERS
1669 select FB_MODE_HELPERS
1670 select VIDEOMODE_HELPERS
1671 help
1672 This is the frame buffer device driver for the TI LCD controller
1673 found on DA8xx/OMAP-L1xx/AM335x SoCs.
1674 If unsure, say N.
1675
1676config FB_VIRTUAL
1677 tristate "Virtual Frame Buffer support (ONLY FOR TESTING!)"
1678 depends on FB
1679 select FB_SYSMEM_HELPERS
1680 help
1681 This is a `virtual' frame buffer device. It operates on a chunk of
1682 unswappable kernel memory instead of on the memory of a graphics
1683 board. This means you cannot see any output sent to this frame
1684 buffer device, while it does consume precious memory. The main use
1685 of this frame buffer device is testing and debugging the frame
1686 buffer subsystem. Do NOT enable it for normal systems! To protect
1687 the innocent, it has to be enabled explicitly at boot time using the
1688 kernel option `video=vfb:'.
1689
1690 To compile this driver as a module, choose M here: the
1691 module will be called vfb. In order to load it, you must use
1692 the vfb_enable=1 option.
1693
1694 If unsure, say N.
1695
1696config XEN_FBDEV_FRONTEND
1697 tristate "Xen virtual frame buffer support"
1698 depends on FB && XEN
1699 select FB_SYSMEM_HELPERS_DEFERRED
1700 select XEN_XENBUS_FRONTEND
1701 default y
1702 help
1703 This driver implements the front-end of the Xen virtual
1704 frame buffer driver. It communicates with a back-end
1705 in another domain.
1706
1707config FB_METRONOME
1708 tristate "E-Ink Metronome/8track controller support"
1709 depends on FB
1710 select FB_SYSMEM_HELPERS_DEFERRED
1711 help
1712 This driver implements support for the E-Ink Metronome
1713 controller. The pre-release name for this device was 8track
1714 and could also have been called by some vendors as PVI-nnnn.
1715
1716config FB_MB862XX
1717 tristate "Fujitsu MB862xx GDC support"
1718 depends on FB
1719 depends on PCI || (OF && PPC)
1720 select FB_IOMEM_HELPERS
1721 help
1722 Frame buffer driver for Fujitsu Carmine/Coral-P(A)/Lime controllers.
1723
1724choice
1725 prompt "GDC variant"
1726 depends on FB_MB862XX
1727
1728config FB_MB862XX_PCI_GDC
1729 bool "Carmine/Coral-P(A) GDC"
1730 depends on PCI
1731 help
1732 This enables framebuffer support for Fujitsu Carmine/Coral-P(A)
1733 PCI graphics controller devices.
1734
1735config FB_MB862XX_LIME
1736 bool "Lime GDC"
1737 depends on OF && PPC
1738 select FB_FOREIGN_ENDIAN
1739 select FB_LITTLE_ENDIAN
1740 help
1741 Framebuffer support for Fujitsu Lime GDC on host CPU bus.
1742
1743endchoice
1744
1745config FB_MB862XX_I2C
1746 bool "Support I2C bus on MB862XX GDC"
1747 depends on FB_MB862XX && I2C
1748 depends on FB_MB862XX=m || I2C=y
1749 default y
1750 help
1751 Selecting this option adds Coral-P(A)/Lime GDC I2C bus adapter
1752 driver to support accessing I2C devices on controller's I2C bus.
1753 These are usually some video decoder chips.
1754
1755config FB_EP93XX
1756 tristate "EP93XX frame buffer support"
1757 depends on FB && ARCH_EP93XX
1758 select FB_IOMEM_HELPERS
1759 help
1760 Framebuffer driver for the Cirrus Logic EP93XX series of processors.
1761 This driver is also available as a module. The module will be called
1762 ep93xx-fb.
1763
1764config FB_PRE_INIT_FB
1765 bool "Don't reinitialize, use bootloader's GDC/Display configuration"
1766 depends on FB && FB_MB862XX_LIME
1767 help
1768 Select this option if display contents should be inherited as set by
1769 the bootloader.
1770
1771config FB_BROADSHEET
1772 tristate "E-Ink Broadsheet/Epson S1D13521 controller support"
1773 depends on FB && (ARCH_PXA || COMPILE_TEST)
1774 select FB_SYSMEM_HELPERS_DEFERRED
1775 help
1776 This driver implements support for the E-Ink Broadsheet
1777 controller. The release name for this device was Epson S1D13521
1778 and could also have been called by other names when coupled with
1779 a bridge adapter.
1780
1781config FB_HYPERV
1782 tristate "Microsoft Hyper-V Synthetic Video support"
1783 depends on FB && HYPERV
1784 select DMA_CMA if HAVE_DMA_CONTIGUOUS && CMA
1785 select FB_IOMEM_HELPERS_DEFERRED
1786 help
1787 This framebuffer driver supports Microsoft Hyper-V Synthetic Video.
1788
1789config FB_SIMPLE
1790 tristate "Simple framebuffer support"
1791 depends on FB
1792 depends on !DRM_SIMPLEDRM
1793 select APERTURE_HELPERS
1794 select FB_IOMEM_HELPERS
1795 help
1796 Say Y if you want support for a simple frame-buffer.
1797
1798 This driver assumes that the display hardware has been initialized
1799 before the kernel boots, and the kernel will simply render to the
1800 pre-allocated frame buffer surface.
1801
1802 Configuration re: surface address, size, and format must be provided
1803 through device tree, or plain old platform data.
1804
1805config FB_SSD1307
1806 tristate "Solomon SSD1307 framebuffer support"
1807 depends on FB && I2C
1808 depends on GPIOLIB || COMPILE_TEST
1809 select FB_BACKLIGHT
1810 select FB_SYSMEM_HELPERS_DEFERRED
1811 help
1812 This driver implements support for the Solomon SSD1307
1813 OLED controller over I2C.
1814
1815config FB_SM712
1816 tristate "Silicon Motion SM712 framebuffer support"
1817 depends on FB && PCI
1818 select FB_IOMEM_HELPERS
1819 help
1820 Frame buffer driver for the Silicon Motion SM710, SM712, SM721
1821 and SM722 chips.
1822
1823 This driver is also available as a module. The module will be
1824 called sm712fb. If you want to compile it as a module, say M
1825 here and read <file:Documentation/kbuild/modules.rst>.
1826
1827source "drivers/video/fbdev/omap/Kconfig"
1828source "drivers/video/fbdev/omap2/Kconfig"
1829source "drivers/video/fbdev/mmp/Kconfig"
1830
1831source "drivers/video/fbdev/core/Kconfig"