1 # SPDX-License-Identifier: GPL-2.0-only
7 tristate "Support for frame buffer device drivers"
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.
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.
24 The device is accessed through special device nodes, usually located
25 in the /dev directory, i.e. /dev/fb*.
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
33 This enables support for native frame buffer device (fbdev) drivers.
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
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.
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.
51 select FB_SYSMEM_HELPERS_DEFERRED
57 Common utility functions useful to fbdev drivers of VGA-based
65 tristate "Aeroflex Gaisler framebuffer support"
66 depends on FB && SPARC
67 select FB_IOMEM_HELPERS
69 This enables support for the SVGACTRL framebuffer in the GRLIB IP library from Aeroflex Gaisler.
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
78 select VIDEO_NOMODESET
80 This enables support for Cirrus Logic GD542x/543x based boards on
81 Amiga: SD64, Piccolo, Picasso II/II+, Picasso IV, or EGS Spectrum.
83 If you have a PCI-based system, this enables support for these
84 chips: GD-543x, GD-544x, GD-5480.
86 Please read the file <file:Documentation/fb/cirrusfb.rst>.
88 Say N unless you have such a graphics board or plan to get one
89 before you next recompile the kernel.
92 tristate "Permedia2 support"
93 depends on FB && ((AMIGA && BROKEN) || PCI)
94 select FB_CFB_FILLRECT
95 select FB_CFB_COPYAREA
96 select FB_CFB_IMAGEBLIT
98 select VIDEO_NOMODESET
100 This is the frame buffer device driver for cards based on
101 the 3D Labs Permedia, Permedia 2 and Permedia 2V chips.
102 The driver was tested on the following cards:
103 Diamond FireGL 1000 PRO AGP
104 ELSA Gloria Synergy PCI
105 Appian Jeronimo PRO (both heads) PCI
106 3DLabs Oxygen ACX aka EONtronics Picasso P2 PCI
107 Techsource Raptor GFX-8P (aka Sun PGX-32) on SPARC
108 ASK Graphic Blaster Exxtreme AGP
110 To compile this driver as a module, choose M here: the
111 module will be called pm2fb.
113 config FB_PM2_FIFO_DISCONNECT
114 bool "enable FIFO disconnect feature"
115 depends on FB_PM2 && PCI
117 Support the Permedia2 FIFO disconnect feature.
120 tristate "ARM PrimeCell PL110 support"
121 depends on ARM || ARM64 || COMPILE_TEST
122 depends on FB && ARM_AMBA && HAS_IOMEM
123 select FB_IOMEM_HELPERS
124 select FB_MODE_HELPERS if OF
125 select VIDEOMODE_HELPERS if OF
126 select BACKLIGHT_CLASS_DEVICE if OF
128 This framebuffer device driver is for the ARM PrimeCell PL110
129 Colour LCD controller. ARM PrimeCells provide the building
130 blocks for System on a Chip devices.
132 If you want to compile this as a module (=code which can be
133 inserted into and removed from the running kernel), say M
134 here and read <file:Documentation/kbuild/modules.rst>. The module
135 will be called amba-clcd.
138 bool "Acorn VIDC support"
139 depends on (FB = y) && ARM && ARCH_ACORN
140 select FB_IOMEM_HELPERS
142 This is the frame buffer device driver for the Acorn VIDC graphics
143 hardware found in Acorn RISC PCs and other ARM-based machines. If
147 tristate "CLPS711X LCD support"
148 depends on FB && (ARCH_CLPS711X || COMPILE_TEST)
149 select FB_MODE_HELPERS
150 select FB_SYS_FILLRECT
151 select FB_SYS_COPYAREA
152 select FB_SYS_IMAGEBLIT
153 select LCD_CLASS_DEVICE
154 select VIDEOMODE_HELPERS
156 Say Y to enable the Framebuffer driver for the Cirrus Logic
160 bool "SA-1100 LCD support"
161 depends on (FB = y) && ARM && ARCH_SA1100
162 select FB_IOMEM_HELPERS
164 This is a framebuffer device for the SA-1100 LCD Controller.
165 See <http://www.linux-fbdev.org/> for information on framebuffer
168 If you plan to use the LCD display with your SA-1100 system, say
172 tristate "Freescale i.MX1/21/25/27 LCD support"
173 depends on FB && HAVE_CLK && HAS_IOMEM
174 depends on ARCH_MXC || COMPILE_TEST
175 select LCD_CLASS_DEVICE
176 select FB_IOMEM_HELPERS
177 select FB_MODE_HELPERS
178 select VIDEOMODE_HELPERS
181 tristate "CyberPro 2000/2010/5000 support"
182 depends on FB && PCI && (BROKEN || !SPARC64)
183 select FB_CFB_FILLRECT
184 select FB_CFB_COPYAREA
185 select FB_CFB_IMAGEBLIT
187 select VIDEO_NOMODESET
189 This enables support for the Integraphics CyberPro 20x0 and 5000
190 VGA chips used in the Rebel.com Netwinder and other machines.
191 Say Y if you have a NetWinder or a graphics card containing this
192 device, otherwise say N.
194 config FB_CYBER2000_DDC
195 bool "DDC for CyberPro support"
196 depends on FB_CYBER2000
200 Say Y here if you want DDC support for your CyberPro graphics
201 card. This is only I2C bus support, driver does not use EDID.
203 config FB_CYBER2000_I2C
204 bool "CyberPro 2000/2010/5000 I2C support"
205 depends on FB_CYBER2000 && I2C && ARCH_NETWINDER
206 depends on I2C=y || FB_CYBER2000=m
209 Enable support for the I2C video decoder interface on the
210 Integraphics CyberPro 20x0 and 5000 VGA chips. This is used
211 on the Netwinder machines for the SAA7111 video capture.
215 depends on (FB = y) && APOLLO
217 select FB_CFB_FILLRECT
218 select FB_CFB_IMAGEBLIT
223 depends on (FB = y) && Q40
225 select FB_IOMEM_HELPERS
228 tristate "Amiga native chipset support"
229 depends on FB && AMIGA
232 This is the frame buffer device driver for the builtin graphics
233 chipset found in Amigas.
235 To compile this driver as a module, choose M here: the
236 module will be called amifb.
239 bool "Amiga OCS chipset support"
242 This enables support for the original Agnus and Denise video chips,
243 found in the Amiga 1000 and most A500's and A2000's. If you intend
244 to run Linux on any of these systems, say Y; otherwise say N.
247 bool "Amiga ECS chipset support"
250 This enables support for the Enhanced Chip Set, found in later
251 A500's, later A2000's, the A600, the A3000, the A3000T and CDTV. If
252 you intend to run Linux on any of these systems, say Y; otherwise
256 bool "Amiga AGA chipset support"
259 This enables support for the Advanced Graphics Architecture (also
260 known as the AGA or AA) Chip Set, found in the A1200, A4000, A4000T
261 and CD32. If you intend to run Linux on any of these systems, say Y;
265 bool "Amiga FrameMaster II/Rainbow II support"
266 depends on (FB = y) && ZORRO
267 select FB_IOMEM_HELPERS
269 This is the frame buffer device driver for the Amiga FrameMaster
270 card from BSC (exhibited 1992 but not shipped as a CBM product).
273 tristate "Arc Monochrome LCD board support"
274 depends on FB && (X86 || COMPILE_TEST)
275 select FB_SYS_FILLRECT
276 select FB_SYS_COPYAREA
277 select FB_SYS_IMAGEBLIT
280 This enables support for the Arc Monochrome LCD board. The board
281 is based on the KS-108 lcd controller and is typically a matrix
282 of 2*n chips. This driver was tested with a 128x64 panel. This
283 driver supports it for use with x86 SBCs through a 16 bit GPIO
284 interface (8 bit data, 8 bit control). If you anticipate using
285 this driver, say Y or M; otherwise say N. You must specify the
286 GPIO IO address to be used for setting control and data.
289 bool "Atari native chipset support"
290 depends on (FB = y) && ATARI
291 select FB_CFB_FILLRECT
292 select FB_CFB_COPYAREA
293 select FB_CFB_IMAGEBLIT
296 This is the frame buffer device driver for the builtin graphics
297 chipset found in Ataris.
300 tristate "Open Firmware frame buffer device support"
301 depends on FB && PPC && (!PPC_PSERIES || PCI)
302 depends on !DRM_OFDRM
303 select APERTURE_HELPERS
304 select FB_IOMEM_HELPERS
307 Say Y if you want support with Open Firmware for your graphics
311 bool "Apple \"control\" display support"
312 depends on (FB = y) && ((PPC_PMAC && PPC32) || COMPILE_TEST)
313 select FB_IOMEM_HELPERS
316 This driver supports a frame buffer for the graphics adapter in the
317 Power Macintosh 7300 and others.
320 bool "Apple \"platinum\" display support"
321 depends on (FB = y) && PPC_PMAC && PPC32
322 select FB_IOMEM_HELPERS
325 This driver supports a frame buffer for the "platinum" graphics
326 adapter in some Power Macintoshes.
329 bool "Apple \"valkyrie\" display support"
330 depends on (FB = y) && (MAC || (PPC_PMAC && PPC32))
331 select FB_IOMEM_HELPERS
334 This driver supports a frame buffer for the "valkyrie" graphics
335 adapter in some Power Macintoshes.
338 bool "Chips 65550 display support"
339 depends on (FB = y) && PPC32 && PCI
340 select FB_IOMEM_HELPERS
341 select VIDEO_NOMODESET
343 This is the frame buffer device driver for the Chips & Technologies
344 65550 graphics chip in PowerBooks.
347 bool "Asiliant (Chips) 69000 display support"
348 depends on (FB = y) && PCI
349 select FB_IOMEM_HELPERS
350 select VIDEO_NOMODESET
352 This is the frame buffer device driver for the Asiliant 69030 chipset
355 bool "IMS Twin Turbo display support"
356 depends on (FB = y) && PCI
357 select FB_CFB_IMAGEBLIT
359 select FB_MACMODES if PPC_PMAC
360 select VIDEO_NOMODESET
362 The IMS Twin Turbo is a PCI-based frame buffer card bundled with
363 many Macintosh and compatible computers.
366 tristate "VGA 16-color graphics support"
367 depends on FB && (X86 || PPC)
368 select APERTURE_HELPERS
369 select FB_CFB_FILLRECT
370 select FB_CFB_COPYAREA
371 select FB_CFB_IMAGEBLIT
373 select FONT_8x16 if FRAMEBUFFER_CONSOLE
375 This is the frame buffer device driver for VGA 16 color graphic
376 cards. Say Y if you have such a card.
378 To compile this driver as a module, choose M here: the
379 module will be called vga16fb.
382 tristate "HP STI frame buffer device support"
383 depends on FB && PARISC
384 select FB_CFB_FILLRECT
385 select FB_CFB_COPYAREA
386 select FB_CFB_IMAGEBLIT
391 Enabling this option will implement the linux framebuffer device
392 using calls to the STI BIOS routines for initialisation.
394 If you enable this option, you will get a planar framebuffer device
395 /dev/fb which will work on the most common HP graphic cards of the
396 NGLE family, including the artist chips (in the 7xx and Bxxx series),
397 HCRX, HCRX24, CRX, CRX24 and VisEG series.
399 It is safe to enable this option, so you should probably say "Y".
402 bool "Generic Macintosh display support"
403 depends on (FB = y) && MAC
404 select FB_IOMEM_HELPERS
409 depends on (FB = y) && DIO
410 select FB_CFB_IMAGEBLIT
415 tristate "TGA/SFB+ framebuffer support"
418 depends on ALPHA || TC
419 select FB_CFB_FILLRECT
420 select FB_CFB_COPYAREA
421 select FB_CFB_IMAGEBLIT
423 select VIDEO_NOMODESET
425 This is the frame buffer device driver for generic TGA and SFB+
426 graphic cards. These include DEC ZLXp-E1, -E2 and -E3 PCI cards,
427 also known as PBXGA-A, -B and -C, and DEC ZLX-E1, -E2 and -E3
428 TURBOchannel cards, also known as PMAGD-A, -B and -C.
430 Due to hardware limitations ZLX-E2 and E3 cards are not supported
431 for DECstation 5000/200 systems. Additionally due to firmware
432 limitations these cards may cause troubles with booting DECstation
433 5000/240 and /260 systems, but are fully supported under Linux if
434 you manage to get it going. ;-)
436 Say Y if you have one of those.
439 tristate "Userspace VESA VGA graphics support"
440 depends on FB && CONNECTOR
442 select FB_IOMEM_HELPERS
443 select FB_MODE_HELPERS
445 This is the frame buffer driver for generic VBE 2.0 compliant
446 graphic cards. It can also take advantage of VBE 3.0 features,
447 such as refresh rate adjustment.
449 This driver generally provides more features than vesafb but
450 requires a userspace helper application called 'v86d'. See
451 <file:Documentation/fb/uvesafb.rst> for more information.
456 bool "VESA VGA graphics support"
457 depends on (FB = y) && X86
458 select APERTURE_HELPERS
459 select FB_IOMEM_HELPERS
462 This is the frame buffer device driver for generic VESA 2.0
463 compliant graphic cards. The older VESA 1.2 cards are not supported.
464 You will get a boot time penguin logo at no additional cost. Please
465 read <file:Documentation/fb/vesafb.rst>. If unsure, say Y.
468 bool "EFI-based Framebuffer Support"
469 depends on (FB = y) && !IA64 && EFI
470 select APERTURE_HELPERS
471 select DRM_PANEL_ORIENTATION_QUIRKS
472 select FB_IOMEM_HELPERS
475 This is the EFI frame buffer device driver. If the firmware on
476 your platform is EFI 1.10 or UEFI 2.0, select Y to add support for
477 using the EFI framebuffer as your console.
480 tristate "N411 Apollo/Hecuba devkit support"
481 depends on FB && X86 && MMU
484 This enables support for the Apollo display controller in its
485 Hecuba form using the n411 devkit.
488 tristate "Hercules mono graphics support"
492 Say Y here if you have a Hercules mono graphics card.
494 To compile this driver as a module, choose M here: the
495 module will be called hgafb.
497 As this card technology is at least 25 years old,
498 most people will answer N here.
501 bool "SGI Graphics Backend frame buffer support"
502 depends on (FB = y) && HAS_IOMEM
503 depends on SGI_IP32 || COMPILE_TEST
504 select FB_IOMEM_HELPERS
506 This is the frame buffer device driver for SGI Graphics Backend.
507 This chip is used in SGI O2 and Visual Workstation 320/540.
510 int "Video memory size in MB"
514 This is the amount of memory reserved for the framebuffer,
515 which can be any value between 1MB and 8MB.
518 bool "SBUS and UPA framebuffers"
519 depends on (FB = y) && SPARC
521 Say Y if you want support for SBUS or UPA based frame buffer device.
523 config FB_SBUS_HELPERS
525 select FB_CFB_COPYAREA
526 select FB_CFB_FILLRECT
527 select FB_CFB_IMAGEBLIT
531 depends on (FB = y) && (SPARC && FB_SBUS)
532 select FB_SBUS_HELPERS
534 This is the frame buffer device driver for the BWtwo frame buffer.
537 bool "CGthree support"
538 depends on (FB = y) && (SPARC && FB_SBUS)
539 select FB_SBUS_HELPERS
541 This is the frame buffer device driver for the CGthree frame buffer.
544 bool "CGsix (GX,TurboGX) support"
545 depends on (FB = y) && (SPARC && FB_SBUS)
546 select FB_CFB_COPYAREA
547 select FB_CFB_IMAGEBLIT
549 This is the frame buffer device driver for the CGsix (GX, TurboGX)
553 bool "Creator/Creator3D/Elite3D support"
554 depends on FB_SBUS && SPARC64
555 select FB_CFB_COPYAREA
556 select FB_CFB_IMAGEBLIT
558 This is the frame buffer device driver for the Creator, Creator3D,
559 and Elite3D graphics boards.
562 bool "TCX (SS4/SS5 only) support"
564 select FB_SBUS_HELPERS
566 This is the frame buffer device driver for the TCX 24/8bit frame
570 bool "CGfourteen (SX) support"
572 select FB_SBUS_HELPERS
574 This is the frame buffer device driver for the CGfourteen frame
575 buffer on Desktop SPARCsystems with the SX graphics option.
578 bool "P9100 (Sparcbook 3 only) support"
580 select FB_SBUS_HELPERS
582 This is the frame buffer device driver for the P9100 card
583 supported on Sparcbook 3 machines.
586 bool "Leo (ZX) support"
588 select FB_SBUS_HELPERS
590 This is the frame buffer device driver for the SBUS-based Sun ZX
591 (leo) frame buffer cards.
594 bool "Sun XVR-500 3DLABS Wildcat support"
595 depends on (FB = y) && PCI && SPARC64
596 select FB_CFB_FILLRECT
597 select FB_CFB_COPYAREA
598 select FB_CFB_IMAGEBLIT
600 select VIDEO_NOMODESET
602 This is the framebuffer device for the Sun XVR-500 and similar
603 graphics cards based upon the 3DLABS Wildcat chipset. The driver
604 only works on sparc64 systems where the system firmware has
605 mostly initialized the card already. It is treated as a
606 completely dumb framebuffer device.
609 bool "Sun XVR-2500 3DLABS Wildcat support"
610 depends on (FB = y) && PCI && SPARC64
611 select FB_IOMEM_HELPERS
612 select VIDEO_NOMODESET
614 This is the framebuffer device for the Sun XVR-2500 and similar
615 graphics cards based upon the 3DLABS Wildcat chipset. The driver
616 only works on sparc64 systems where the system firmware has
617 mostly initialized the card already. It is treated as a
618 completely dumb framebuffer device.
621 bool "Sun XVR-1000 support"
622 depends on (FB = y) && SPARC64
623 select FB_IOMEM_HELPERS
625 This is the framebuffer device for the Sun XVR-1000 and similar
626 graphics cards. The driver only works on sparc64 systems where
627 the system firmware has mostly initialized the card already. It
628 is treated as a completely dumb framebuffer device.
631 tristate "NEC PowerVR 2 display support"
632 depends on FB && HAS_IOMEM
633 depends on SH_DREAMCAST || COMPILE_TEST
634 select FB_CFB_FILLRECT
635 select FB_CFB_COPYAREA
636 select FB_CFB_IMAGEBLIT
638 select VIDEO_NOMODESET
640 Say Y here if you have a PowerVR 2 card in your box. If you plan to
641 run linux on your Dreamcast, you will have to say Y here.
642 This driver may or may not work on other PowerVR 2 cards, but is
643 totally untested. Use at your own risk. If unsure, say N.
645 To compile this driver as a module, choose M here: the
646 module will be called pvr2fb.
648 You can pass several parameters to the driver at boot time or at
649 module load time. The parameters look like "video=pvr2:XXX", where
650 the meaning of XXX can be found at the end of the main source file
651 (<file:drivers/video/fbdev/pvr2fb.c>). Please see the file
652 <file:Documentation/fb/pvr2fb.rst>.
655 tristate "OpenCores VGA/LCD core 2.0 framebuffer support"
656 depends on FB && HAS_DMA
657 select FB_IOMEM_HELPERS
659 This enables support for the OpenCores VGA/LCD core.
661 The OpenCores VGA/LCD core is typically used together with
662 softcore CPUs (e.g. OpenRISC or Microblaze) or hard processor
663 systems (e.g. Altera socfpga or Xilinx Zynq) on FPGAs.
665 The source code and specification for the core is available at
666 <https://opencores.org/project,vga_lcd>
669 tristate "Epson S1D13XXX framebuffer support"
671 select FB_CFB_FILLRECT
672 select FB_CFB_COPYAREA
673 select FB_CFB_IMAGEBLIT
676 Support for S1D13XXX framebuffer device family (currently only
677 working with S1D13806). Product specs at
678 <https://vdc.epson.com/>
681 tristate "AT91 LCD Controller support"
682 depends on FB && OF && HAVE_CLK && HAS_IOMEM
683 depends on HAVE_FB_ATMEL || COMPILE_TEST
685 select FB_IOMEM_HELPERS
686 select FB_MODE_HELPERS
687 select VIDEOMODE_HELPERS
689 This enables support for the AT91 LCD Controller.
692 tristate "nVidia Framebuffer Support"
694 select FB_BACKLIGHT if FB_NVIDIA_BACKLIGHT
695 select FB_CFB_FILLRECT
696 select FB_CFB_COPYAREA
697 select FB_CFB_IMAGEBLIT
701 select VIDEO_NOMODESET
703 This driver supports graphics boards with the nVidia chips, TNT
704 and newer. For very old chipsets, such as the RIVA128, then use
706 Say Y if you have such a graphics board.
708 To compile this driver as a module, choose M here: the
709 module will be called nvidiafb.
712 bool "Enable DDC Support"
716 This enables I2C support for nVidia Chipsets. This is used
717 only for getting EDID information from the attached display
718 allowing for robust video mode handling and switching.
720 Because fbdev-2.6 requires that drivers must be able to
721 independently validate video mode parameters, you should say Y
724 config FB_NVIDIA_DEBUG
725 bool "Lots of debug output"
728 Say Y here if you want the nVidia driver to output all sorts
729 of debugging information to provide to the maintainer when
730 something goes wrong.
732 config FB_NVIDIA_BACKLIGHT
733 bool "Support for backlight control"
737 Say Y here if you want to control the backlight of your display.
740 tristate "nVidia Riva support"
742 select FB_BACKLIGHT if FB_RIVA_BACKLIGHT
743 select FB_CFB_FILLRECT
744 select FB_CFB_COPYAREA
745 select FB_CFB_IMAGEBLIT
747 select FB_MODE_HELPERS
750 select VIDEO_NOMODESET
752 This driver supports graphics boards with the nVidia Riva/Geforce
754 Say Y if you have such a graphics board.
756 To compile this driver as a module, choose M here: the
757 module will be called rivafb.
760 bool "Enable DDC Support"
764 This enables I2C support for nVidia Chipsets. This is used
765 only for getting EDID information from the attached display
766 allowing for robust video mode handling and switching.
768 Because fbdev-2.6 requires that drivers must be able to
769 independently validate video mode parameters, you should say Y
773 bool "Lots of debug output"
776 Say Y here if you want the Riva driver to output all sorts
777 of debugging information to provide to the maintainer when
778 something goes wrong.
780 config FB_RIVA_BACKLIGHT
781 bool "Support for backlight control"
785 Say Y here if you want to control the backlight of your display.
788 tristate "Intel740 support"
790 select FB_IOMEM_HELPERS
791 select FB_MODE_HELPERS
793 select VIDEO_NOMODESET
796 This driver supports graphics cards based on Intel740 chip.
799 tristate "Intel 810/815 support"
800 depends on FB && PCI && X86_32 && AGP_INTEL
802 select FB_MODE_HELPERS
804 select VIDEO_NOMODESET
806 This driver supports the on-board graphics built in to the Intel 810
807 and 815 chipsets. Say Y if you have and plan to use such a board.
809 To compile this driver as a module, choose M here: the
810 module will be called i810fb.
812 For more information, please read
813 <file:Documentation/fb/intel810.rst>
816 bool "use VESA Generalized Timing Formula"
819 If you say Y, then the VESA standard, Generalized Timing Formula
820 or GTF, will be used to calculate the required video timing values
821 per video mode. Since the GTF allows nondiscrete timings
822 (nondiscrete being a range of values as opposed to discrete being a
823 set of values), you'll be able to use any combination of horizontal
824 and vertical resolutions, and vertical refresh rates without having
825 to specify your own timing parameters. This is especially useful
826 to maximize the performance of an aging display, or if you just
827 have a display with nonstandard dimensions. A VESA compliant
828 monitor is recommended, but can still work with non-compliant ones.
829 If you need or want this, then select this option. The timings may
830 not be compliant with Intel's recommended values. Use at your own
833 If you say N, the driver will revert to discrete video timings
834 using a set recommended by Intel in their documentation.
839 bool "Enable DDC Support"
840 depends on FB_I810 && FB_I810_GTF
843 Add DDC/I2C support for i810fb. This will allow the driver to get
844 display information, especially for monitors with fickle timings.
849 tristate "Intel LE80578 (Vermilion) support"
850 depends on FB && PCI && X86
851 select FB_MODE_HELPERS
852 select FB_CFB_FILLRECT
853 select FB_CFB_COPYAREA
854 select FB_CFB_IMAGEBLIT
855 select VIDEO_NOMODESET
857 This driver supports the LE80578 (Vermilion Range) chipset
859 config FB_CARILLO_RANCH
860 tristate "Intel Carillo Ranch support"
861 depends on FB_LE80578 && FB && PCI && X86
863 This driver supports the LE80578 (Carillo Ranch) board
866 tristate "Intel 830M/845G/852GM/855GM/865G/915G/945G/945GM/965G/965GM support"
867 depends on FB && PCI && X86 && AGP_INTEL && EXPERT
868 select FB_CFB_FILLRECT
869 select FB_CFB_COPYAREA
870 select FB_CFB_IMAGEBLIT
872 select FB_MODE_HELPERS
873 select BOOT_VESA_SUPPORT if FB_INTEL = y
874 select VIDEO_NOMODESET
877 This driver supports the on-board graphics built in to the Intel
878 830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM/965G/965GM chipsets.
879 Say Y if you have and plan to use such a board.
881 To make FB_INTEL=Y work you need to say AGP_INTEL=y too.
883 To compile this driver as a module, choose M here: the
884 module will be called intelfb.
886 For more information, please read <file:Documentation/fb/intelfb.rst>
888 config FB_INTEL_DEBUG
889 bool "Intel driver Debug Messages"
892 Say Y here if you want the Intel driver to output all sorts
893 of debugging information to provide to the maintainer when
894 something goes wrong.
897 bool "DDC/I2C for Intel framebuffer support"
902 Say Y here if you want DDC/I2C support for your on-board Intel graphics.
905 tristate "Matrox acceleration"
907 select FB_CFB_FILLRECT
908 select FB_CFB_COPYAREA
909 select FB_CFB_IMAGEBLIT
911 select FB_TILEBLITTING
912 select FB_MACMODES if PPC_PMAC
913 select VIDEO_NOMODESET
915 Say Y here if you have a Matrox Millennium, Matrox Millennium II,
916 Matrox Mystique, Matrox Mystique 220, Matrox Productiva G100, Matrox
917 Mystique G200, Matrox Millennium G200, Matrox Marvel G200 video,
918 Matrox G400, G450 or G550 card in your box.
920 To compile this driver as a module, choose M here: the
921 module will be called matroxfb.
923 You can pass several parameters to the driver at boot time or at
924 module load time. The parameters look like "video=matroxfb:XXX", and
925 are described in <file:Documentation/fb/matroxfb.rst>.
927 config FB_MATROX_MILLENIUM
928 bool "Millennium I/II support"
931 Say Y here if you have a Matrox Millennium or Matrox Millennium II
932 video card. If you select "Advanced lowlevel driver options" below,
933 you should check 4 bpp packed pixel, 8 bpp packed pixel, 16 bpp
934 packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can
935 also use font widths different from 8.
937 config FB_MATROX_MYSTIQUE
938 bool "Mystique support"
941 Say Y here if you have a Matrox Mystique or Matrox Mystique 220
942 video card. If you select "Advanced lowlevel driver options" below,
943 you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp
944 packed pixel and 32 bpp packed pixel. You can also use font widths
948 bool "G100/G200/G400/G450/G550 support"
951 Say Y here if you have a Matrox G100, G200, G400, G450 or G550 based
952 video card. If you select "Advanced lowlevel driver options", you
953 should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed
954 pixel and 32 bpp packed pixel. You can also use font widths
957 If you need support for G400 secondary head, you must say Y to
958 "Matrox I2C support" and "G400 second head support" right below.
959 G450/G550 secondary head and digital output are supported without
962 The driver starts in monitor mode. You must use the matroxset tool
963 (available at <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to
964 swap primary and secondary head outputs, or to change output mode.
965 Secondary head driver always start in 640x480 resolution and you
966 must use fbset to change it.
968 Do not forget that second head supports only 16 and 32 bpp
969 packed pixels, so it is a good idea to compile them into the kernel
970 too. You can use only some font widths, as the driver uses generic
971 painting procedures (the secondary head does not use acceleration
974 G450/G550 hardware can display TV picture only from secondary CRTC,
975 and it performs no scaling, so picture must have 525 or 625 lines.
978 tristate "Matrox I2C support"
982 This drivers creates I2C buses which are needed for accessing the
983 DDC (I2C) bus present on all Matroxes, an I2C bus which
984 interconnects Matrox optional devices, like MGA-TVO on G200 and
985 G400, and the secondary head DDC bus, present on G400 only.
987 You can say Y or M here if you want to experiment with monitor
988 detection code. You must say Y or M here if you want to use either
989 second head of G400 or MGA-TVO on G200 or G400.
991 If you compile it as module, it will create a module named
994 config FB_MATROX_MAVEN
995 tristate "G400 second head support"
996 depends on FB_MATROX_G && FB_MATROX_I2C
997 select FB_IOMEM_HELPERS
999 WARNING !!! This support does not work with G450 !!!
1001 Say Y or M here if you want to use a secondary head (meaning two
1002 monitors in parallel) on G400 or MGA-TVO add-on on G200. Secondary
1003 head is not compatible with accelerated XFree 3.3.x SVGA servers -
1004 secondary head output is blanked while you are in X. With XFree
1005 3.9.17 preview you can use both heads if you use SVGA over fbdev or
1006 the fbdev driver on first head and the fbdev driver on second head.
1008 If you compile it as module, two modules are created,
1009 matroxfb_crtc2 and matroxfb_maven. Matroxfb_maven is needed for
1010 both G200 and G400, matroxfb_crtc2 is needed only by G400. You must
1011 also load i2c-matroxfb to get it to run.
1013 The driver starts in monitor mode and you must use the matroxset
1015 <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to switch it to
1016 PAL or NTSC or to swap primary and secondary head outputs.
1017 Secondary head driver also always start in 640x480 resolution, you
1018 must use fbset to change it.
1020 Also do not forget that second head supports only 16 and 32 bpp
1021 packed pixels, so it is a good idea to compile them into the kernel
1022 too. You can use only some font widths, as the driver uses generic
1023 painting procedures (the secondary head does not use acceleration
1027 tristate "ATI Radeon display support"
1028 depends on FB && PCI
1029 select FB_BACKLIGHT if FB_RADEON_BACKLIGHT
1030 select FB_CFB_FILLRECT
1031 select FB_CFB_COPYAREA
1032 select FB_CFB_IMAGEBLIT
1033 select FB_IOMEM_FOPS
1034 select FB_MACMODES if PPC
1035 select FB_MODE_HELPERS
1036 select VIDEO_NOMODESET
1038 Choose this option if you want to use an ATI Radeon graphics card as
1039 a framebuffer device. There are both PCI and AGP versions. You
1040 don't need to choose this to run the Radeon in plain VGA mode.
1042 There is a product page at
1043 https://products.amd.com/en-us/GraphicCardResult.aspx
1045 config FB_RADEON_I2C
1046 bool "DDC/I2C for ATI Radeon support"
1047 depends on FB_RADEON
1051 Say Y here if you want DDC/I2C support for your Radeon board.
1053 config FB_RADEON_BACKLIGHT
1054 bool "Support for backlight control"
1055 depends on FB_RADEON
1058 Say Y here if you want to control the backlight of your display.
1060 config FB_RADEON_DEBUG
1061 bool "Lots of debug output from Radeon driver"
1062 depends on FB_RADEON
1064 Say Y here if you want the Radeon driver to output all sorts
1065 of debugging information to provide to the maintainer when
1066 something goes wrong.
1069 tristate "ATI Rage128 display support"
1070 depends on FB && PCI
1071 select FB_BACKLIGHT if FB_ATY128_BACKLIGHT
1072 select FB_IOMEM_HELPERS
1073 select FB_MACMODES if PPC_PMAC
1074 select VIDEO_NOMODESET
1076 This driver supports graphics boards with the ATI Rage128 chips.
1077 Say Y if you have such a graphics board and read
1078 <file:Documentation/fb/aty128fb.rst>.
1080 To compile this driver as a module, choose M here: the
1081 module will be called aty128fb.
1083 config FB_ATY128_BACKLIGHT
1084 bool "Support for backlight control"
1085 depends on FB_ATY128
1088 Say Y here if you want to control the backlight of your display.
1091 tristate "ATI Mach64 display support" if PCI || ATARI
1092 depends on FB && !SPARC32
1093 select FB_CFB_FILLRECT
1094 select FB_CFB_COPYAREA
1095 select FB_CFB_IMAGEBLIT
1096 select FB_BACKLIGHT if FB_ATY_BACKLIGHT
1097 select FB_IOMEM_FOPS
1098 select FB_MACMODES if PPC
1099 select FB_ATY_CT if SPARC64 && PCI
1100 select VIDEO_NOMODESET
1102 This driver supports graphics boards with the ATI Mach64 chips.
1103 Say Y if you have such a graphics board.
1105 To compile this driver as a module, choose M here: the
1106 module will be called atyfb.
1109 bool "Mach64 CT/VT/GT/LT (incl. 3D RAGE) support"
1110 depends on PCI && FB_ATY
1112 Say Y here to support use of ATI's 64-bit Rage boards (or other
1113 boards based on the Mach64 CT, VT, GT, and LT chipsets) as a
1114 framebuffer device. The ATI product support page for these boards
1115 is at <http://support.ati.com/products/pc/mach64/mach64.html>.
1117 config FB_ATY_GENERIC_LCD
1118 bool "Mach64 generic LCD support"
1119 depends on FB_ATY_CT
1121 Say Y if you have a laptop with an ATI Rage LT PRO, Rage Mobility,
1122 Rage XC, or Rage XL chipset.
1125 bool "Mach64 GX support" if PCI
1129 Say Y here to support use of the ATI Mach64 Graphics Expression
1130 board (or other boards based on the Mach64 GX chipset) as a
1131 framebuffer device. The ATI product support page for these boards
1133 <http://support.ati.com/products/pc/mach64/graphics_xpression.html>.
1135 config FB_ATY_BACKLIGHT
1136 bool "Support for backlight control"
1140 Say Y here if you want to control the backlight of your display.
1143 tristate "S3 Trio/Virge support"
1144 depends on FB && PCI
1145 select FB_CFB_FILLRECT
1146 select FB_CFB_COPYAREA
1147 select FB_CFB_IMAGEBLIT
1148 select FB_IOMEM_FOPS
1149 select FB_TILEBLITTING
1152 select VIDEO_NOMODESET
1153 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1155 Driver for graphics boards with S3 Trio / S3 Virge chip.
1158 bool "DDC for S3 support"
1163 Say Y here if you want DDC support for your S3 graphics card.
1166 tristate "S3 Savage support"
1167 depends on FB && PCI
1168 select FB_CFB_FILLRECT
1169 select FB_CFB_COPYAREA
1170 select FB_CFB_IMAGEBLIT
1171 select FB_IOMEM_FOPS
1172 select FB_MODE_HELPERS
1174 select VIDEO_NOMODESET
1176 This driver supports notebooks and computers with S3 Savage PCI/AGP
1179 Say Y if you have such a graphics card.
1181 To compile this driver as a module, choose M here; the module
1182 will be called savagefb.
1184 config FB_SAVAGE_I2C
1185 bool "Enable DDC2 Support"
1186 depends on FB_SAVAGE
1189 This enables I2C support for S3 Savage Chipsets. This is used
1190 only for getting EDID information from the attached display
1191 allowing for robust video mode handling and switching.
1193 Because fbdev-2.6 requires that drivers must be able to
1194 independently validate video mode parameters, you should say Y
1197 config FB_SAVAGE_ACCEL
1198 bool "Enable Console Acceleration"
1199 depends on FB_SAVAGE
1201 This option will compile in console acceleration support. If
1202 the resulting framebuffer console has bothersome glitches, then
1206 tristate "SiS/XGI display support"
1207 depends on FB && PCI
1208 select BOOT_VESA_SUPPORT if FB_SIS = y
1209 select FB_CFB_FILLRECT
1210 select FB_CFB_COPYAREA
1211 select FB_CFB_IMAGEBLIT
1212 select FB_IOMEM_FOPS
1213 select FB_SIS_300 if !FB_SIS_315
1214 select VIDEO_NOMODESET
1216 This is the frame buffer device driver for the SiS 300, 315, 330
1217 and 340 series as well as XGI V3XT, V5, V8, Z7 graphics chipsets.
1218 Specs available at <https://www.sis.com> and <http://www.xgitech.com>.
1220 To compile this driver as a module, choose M here; the module
1221 will be called sisfb.
1224 bool "SiS 300 series support"
1227 Say Y here to support use of the SiS 300/305, 540, 630 and 730.
1230 bool "SiS 315/330/340 series and XGI support"
1233 Say Y here to support use of the SiS 315, 330 and 340 series
1234 (315/H/PRO, 55x, 650, 651, 740, 330, 661, 741, 760, 761) as well
1235 as XGI V3XT, V5, V8 and Z7.
1238 tristate "VIA UniChrome (Pro) and Chrome9 display support"
1239 depends on FB && PCI && GPIOLIB && I2C && (X86 || COMPILE_TEST)
1240 select FB_CFB_FILLRECT
1241 select FB_CFB_COPYAREA
1242 select FB_CFB_IMAGEBLIT
1244 select VIDEO_NOMODESET
1246 This is the frame buffer device driver for Graphics chips of VIA
1247 UniChrome (Pro) Family (CLE266,PM800/CN400,P4M800CE/P4M800Pro/
1248 CN700/VN800,CX700/VX700,P4M890) and Chrome9 Family (K8M890,CN896
1250 Say Y if you have a VIA UniChrome graphics board.
1252 To compile this driver as a module, choose M here: the
1253 module will be called viafb.
1257 config FB_VIA_DIRECT_PROCFS
1258 bool "direct hardware access via procfs (DEPRECATED)(DANGEROUS)"
1260 Allow direct hardware access to some output registers via procfs.
1261 This is dangerous but may provide the only chance to get the
1262 correct output device configuration.
1263 Its use is strongly discouraged.
1265 config FB_VIA_X_COMPATIBILITY
1266 bool "X server compatibility"
1268 This option reduces the functionality (power saving, ...) of the
1269 framebuffer to avoid negative impact on the OpenChrome X server.
1270 If you use any X server other than fbdev you should enable this
1271 otherwise it should be safe to disable it and allow using all
1277 tristate "NeoMagic display support"
1278 depends on FB && PCI
1279 select FB_CFB_FILLRECT
1280 select FB_CFB_COPYAREA
1281 select FB_CFB_IMAGEBLIT
1282 select FB_IOMEM_FOPS
1283 select FB_MODE_HELPERS
1285 select VIDEO_NOMODESET
1287 This driver supports notebooks with NeoMagic PCI chips.
1288 Say Y if you have such a graphics card.
1290 To compile this driver as a module, choose M here: the
1291 module will be called neofb.
1294 tristate "IMG Kyro support"
1295 depends on FB && PCI
1296 select FB_IOMEM_HELPERS
1297 select VIDEO_NOMODESET
1299 Say Y here if you have a STG4000 / Kyro / PowerVR 3 based
1302 To compile this driver as a module, choose M here: the
1303 module will be called kyrofb.
1306 tristate "3Dfx Banshee/Voodoo3/Voodoo5 display support"
1307 depends on FB && PCI
1308 select FB_CFB_IMAGEBLIT
1309 select FB_CFB_FILLRECT
1310 select FB_CFB_COPYAREA
1311 select FB_MODE_HELPERS
1312 select VIDEO_NOMODESET
1314 This driver supports graphics boards with the 3Dfx Banshee,
1315 Voodoo3 or VSA-100 (aka Voodoo4/5) chips. Say Y if you have
1316 such a graphics board.
1318 To compile this driver as a module, choose M here: the
1319 module will be called tdfxfb.
1321 config FB_3DFX_ACCEL
1322 bool "3Dfx Acceleration functions"
1325 This will compile the 3Dfx Banshee/Voodoo3/VSA-100 frame buffer
1326 device driver with acceleration functions.
1329 bool "Enable DDC/I2C support"
1334 Say Y here if you want DDC/I2C support for your 3dfx Voodoo3.
1337 tristate "3Dfx Voodoo Graphics (sst1) support"
1338 depends on FB && PCI
1339 depends on FB_DEVICE
1340 select FB_IOMEM_HELPERS
1341 select VIDEO_NOMODESET
1343 Say Y here if you have a 3Dfx Voodoo Graphics (Voodoo1/sst1) or
1344 Voodoo2 (cvg) based graphics card.
1346 To compile this driver as a module, choose M here: the
1347 module will be called sstfb.
1349 WARNING: Do not use any application that uses the 3D engine
1350 (namely glide) while using this driver.
1351 Please read the <file:Documentation/fb/sstfb.rst> for supported
1352 options and other important info support.
1355 tristate "VIA VT8623 support"
1356 depends on FB && PCI
1357 select FB_CFB_FILLRECT
1358 select FB_CFB_COPYAREA
1359 select FB_CFB_IMAGEBLIT
1360 select FB_TILEBLITTING
1363 select VIDEO_NOMODESET
1364 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1366 Driver for CastleRock integrated graphics core in the
1367 VIA VT8623 [Apollo CLE266] chipset.
1370 tristate "Trident/CyberXXX/CyberBlade support"
1371 depends on FB && PCI
1372 select FB_CFB_FILLRECT
1373 select FB_CFB_COPYAREA
1374 select FB_CFB_IMAGEBLIT
1376 select FB_MODE_HELPERS
1377 select VIDEO_NOMODESET
1379 This is the frame buffer device driver for Trident PCI/AGP chipsets.
1380 Supported chipset families are TGUI 9440/96XX, 3DImage, Blade3D
1382 There are also integrated versions of these chips called CyberXXXX,
1383 CyberImage or CyberBlade. These chips are mostly found in laptops
1384 but also on some motherboards including early VIA EPIA motherboards.
1385 For more information, read <file:Documentation/fb/tridentfb.rst>
1387 Say Y if you have such a graphics board.
1389 To compile this driver as a module, choose M here: the
1390 module will be called tridentfb.
1393 tristate "ARK 2000PV support"
1394 depends on FB && PCI
1395 select FB_CFB_FILLRECT
1396 select FB_CFB_COPYAREA
1397 select FB_CFB_IMAGEBLIT
1398 select FB_IOMEM_FOPS
1399 select FB_TILEBLITTING
1402 select VIDEO_NOMODESET
1403 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1405 Driver for PCI graphics boards with ARK 2000PV chip
1406 and ICS 5342 RAMDAC.
1409 tristate "Permedia3 support"
1410 depends on FB && PCI
1411 select FB_CFB_FILLRECT
1412 select FB_CFB_COPYAREA
1413 select FB_CFB_IMAGEBLIT
1414 select FB_IOMEM_FOPS
1415 select VIDEO_NOMODESET
1417 This is the frame buffer device driver for the 3DLabs Permedia3
1418 chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 &
1419 similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000
1420 and maybe other boards.
1423 tristate "Fujitsu carmine frame buffer support"
1424 depends on FB && PCI
1425 select FB_IOMEM_HELPERS
1426 select VIDEO_NOMODESET
1428 This is the frame buffer device driver for the Fujitsu Carmine chip.
1429 The driver provides two independent frame buffer devices.
1432 depends on FB_CARMINE
1433 prompt "DRAM timing"
1434 default FB_CARMINE_DRAM_EVAL
1436 config FB_CARMINE_DRAM_EVAL
1437 bool "Eval board timings"
1439 Use timings which work on the eval card.
1441 config CARMINE_DRAM_CUSTOM
1442 bool "Custom board timings"
1444 Use custom board timings.
1448 bool "Au1100 LCD Driver"
1449 depends on (FB = y) && MIPS_ALCHEMY
1450 select FB_IOMEM_HELPERS
1452 This is the framebuffer driver for the AMD Au1100 SOC. It can drive
1453 various panels and CRTs by passing in kernel cmd line option
1454 au1100fb:panel=<name>.
1457 bool "Au1200/Au1300 LCD Driver"
1458 depends on (FB = y) && MIPS_ALCHEMY
1459 select FB_SYS_FILLRECT
1460 select FB_SYS_COPYAREA
1461 select FB_SYS_IMAGEBLIT
1464 This is the framebuffer driver for the Au1200/Au1300 SOCs.
1465 It can drive various panels and CRTs by passing in kernel cmd line
1466 option au1200fb:panel=<name>.
1469 bool "VIA VT8500 framebuffer support"
1470 depends on (FB = y) && ARM && ARCH_VT8500
1471 select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS)
1472 select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS)
1473 select FB_SYS_IMAGEBLIT
1474 select FB_MODE_HELPERS
1475 select VIDEOMODE_HELPERS
1477 This is the framebuffer driver for VIA VT8500 integrated LCD
1481 bool "Wondermedia WM8xxx-series frame buffer support"
1482 depends on (FB = y) && HAS_IOMEM && (ARCH_VT8500 || COMPILE_TEST)
1483 select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS)
1484 select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS)
1485 select FB_SYS_IMAGEBLIT
1486 select FB_MODE_HELPERS
1487 select VIDEOMODE_HELPERS
1489 This is the framebuffer driver for WonderMedia WM8xxx-series
1490 integrated LCD controller. This driver covers the WM8505, WM8650
1493 config FB_WMT_GE_ROPS
1494 bool "VT8500/WM8xxx accelerated raster ops support"
1495 depends on (FB = y) && (FB_VT8500 || FB_WM8505)
1497 This adds support for accelerated raster operations on the
1498 VIA VT8500 and Wondermedia 85xx series SoCs.
1500 source "drivers/video/fbdev/geode/Kconfig"
1503 tristate "HD64461 Frame Buffer support"
1504 depends on FB && HD64461
1505 select FB_CFB_FILLRECT
1506 select FB_CFB_IMAGEBLIT
1507 select FB_IOMEM_FOPS
1509 This is the frame buffer device driver for the Hitachi HD64461 LCD
1513 tristate "PMAG-AA TURBOchannel framebuffer support"
1515 select FB_IOMEM_HELPERS
1517 Support for the PMAG-AA TURBOchannel framebuffer card (1280x1024x1)
1518 used mainly in the MIPS-based DECstation series.
1521 tristate "PMAG-BA TURBOchannel framebuffer support"
1523 select FB_IOMEM_HELPERS
1525 Support for the PMAG-BA TURBOchannel framebuffer card (1024x864x8)
1526 used mainly in the MIPS-based DECstation series.
1529 tristate "PMAGB-B TURBOchannel framebuffer support"
1531 select FB_IOMEM_HELPERS
1533 Support for the PMAGB-B TURBOchannel framebuffer card used mainly
1534 in the MIPS-based DECstation series. The card is currently only
1535 supported in 1280x1024x8 mode.
1538 bool "Maxine (Personal DECstation) onboard framebuffer support"
1539 depends on (FB = y) && MACH_DECSTATION
1540 select FB_IOMEM_HELPERS
1542 Support for the onboard framebuffer (1024x768x8) in the Personal
1543 DECstation series (Personal DECstation 5000/20, /25, /33, /50,
1547 bool "G364 frame buffer support"
1548 depends on (FB = y) && (MIPS_MAGNUM_4000 || OLIVETTI_M700)
1549 select FB_IOMEM_HELPERS
1551 The G364 driver is the framebuffer used in MIPS Magnum 4000 and
1552 Olivetti M700-10 systems.
1555 bool "Motorola 68328 native frame buffer support"
1556 depends on (FB = y) && (M68328 || M68EZ328 || M68VZ328)
1557 select FB_IOMEM_HELPERS
1559 Say Y here if you want to support the built-in frame buffer of
1560 the Motorola 68328 CPU family.
1563 tristate "PXA168/910 LCD framebuffer support"
1564 depends on FB && HAVE_CLK && HAS_IOMEM
1565 depends on CPU_PXA168 || CPU_PXA910 || COMPILE_TEST
1566 select FB_IOMEM_HELPERS
1568 Frame buffer driver for the built-in LCD controller in the Marvell
1572 tristate "PXA LCD framebuffer support"
1573 depends on FB && ARCH_PXA
1574 select FB_IOMEM_HELPERS
1575 select VIDEOMODE_HELPERS if OF
1576 select FB_MODE_HELPERS if OF
1578 Frame buffer driver for the built-in LCD controller in the Intel
1581 This driver is also available as a module ( = code which can be
1582 inserted and removed from the running kernel whenever you want). The
1583 module will be called pxafb. If you want to compile it as a module,
1584 say M here and read <file:Documentation/kbuild/modules.rst>.
1588 config FB_PXA_OVERLAY
1589 bool "Support PXA27x/PXA3xx Overlay(s) as framebuffer"
1590 depends on FB_PXA && (PXA27x || PXA3xx)
1592 config FB_PXA_SMARTPANEL
1593 bool "PXA Smartpanel LCD support"
1596 config FB_PXA_PARAMETERS
1597 bool "PXA LCD command line parameters"
1600 Enable the use of kernel command line or module parameters
1601 to configure the physical properties of the LCD panel when
1602 using the PXA LCD driver.
1604 This option allows you to override the panel parameters
1605 supplied by the platform in order to support multiple
1606 different models of flatpanel. If you will only be using a
1607 single model of flatpanel then you can safely leave this
1610 <file:Documentation/fb/pxafb.rst> describes the available parameters.
1613 tristate "PXA3xx 2D graphics accelerator driver"
1616 Kernelspace driver for the 2D graphics controller unit (GCU)
1617 found on PXA3xx processors. There is a counterpart driver in the
1618 DirectFB suite, see http://www.directfb.org/
1620 If you compile this as a module, it will be called pxa3xx_gcu.
1623 tristate "Freescale DIU framebuffer support"
1624 depends on FB && FSL_SOC
1625 select FB_IOMEM_HELPERS
1626 select FB_MODE_HELPERS
1627 select PPC_LIB_RHEAP
1629 Framebuffer driver for the Freescale SoC DIU
1631 config FB_SH_MOBILE_LCDC
1632 tristate "SuperH Mobile LCDC framebuffer support"
1633 depends on FB && HAVE_CLK && HAS_IOMEM
1634 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
1635 depends on FB_DEVICE
1636 select FB_SYS_FILLRECT
1637 select FB_SYS_COPYAREA
1638 select FB_SYS_IMAGEBLIT
1640 select FB_DEFERRED_IO
1643 Frame buffer driver for the on-chip SH-Mobile LCD controller.
1646 tristate "Samsung S3C framebuffer support"
1647 depends on FB && HAVE_CLK && HAS_IOMEM
1648 depends on ARCH_S3C64XX || COMPILE_TEST
1649 select FB_IOMEM_HELPERS
1651 Frame buffer driver for the built-in FB controller in the Samsung
1652 SoC line such as the S3C6400 and S3C6410.
1654 These chips all have the same basic framebuffer design with the
1655 actual capabilities depending on the chip. The S3C6400
1656 and S3C6410 support 4 hardware windows.
1658 Currently the support is only for the S3C6400 and S3C6410 SoCs.
1660 config FB_S3C_DEBUG_REGWRITE
1661 bool "Debug register writes"
1664 Show all register writes via pr_debug()
1667 tristate "Silicon Motion SM501 framebuffer support"
1668 depends on FB && MFD_SM501
1669 select FB_CFB_FILLRECT
1670 select FB_CFB_COPYAREA
1671 select FB_CFB_IMAGEBLIT
1672 select FB_IOMEM_FOPS
1674 Frame buffer driver for the CRT and LCD controllers in the Silicon
1677 This driver is also available as a module ( = code which can be
1678 inserted and removed from the running kernel whenever you want). The
1679 module will be called sm501fb. If you want to compile it as a module,
1680 say M here and read <file:Documentation/kbuild/modules.rst>.
1685 tristate "SMSC UFX6000/7000 USB Framebuffer support"
1686 depends on FB && USB
1687 select FB_MODE_HELPERS
1688 select FB_SYS_FILLRECT
1689 select FB_SYS_COPYAREA
1690 select FB_SYS_IMAGEBLIT
1692 select FB_DEFERRED_IO
1694 This is a kernel framebuffer driver for SMSC UFX USB devices.
1695 Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and
1696 mplayer -vo fbdev. Supports both UFX6000 (USB 2.0) and UFX7000
1698 To compile as a module, choose M here: the module name is smscufx.
1701 tristate "Displaylink USB Framebuffer support"
1702 depends on FB && USB
1703 depends on FB_DEVICE
1704 select FB_MODE_HELPERS
1705 select FB_SYS_FILLRECT
1706 select FB_SYS_COPYAREA
1707 select FB_SYS_IMAGEBLIT
1709 select FB_DEFERRED_IO
1711 This is a kernel framebuffer driver for DisplayLink USB devices.
1712 Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and
1713 mplayer -vo fbdev. Supports all USB 2.0 era DisplayLink devices.
1714 To compile as a module, choose M here: the module name is udlfb.
1716 config FB_IBM_GXT4500
1717 tristate "Framebuffer support for IBM GXT4000P/4500P/6000P/6500P adaptors"
1719 select FB_IOMEM_HELPERS
1720 select VIDEO_NOMODESET
1722 Say Y here to enable support for the IBM GXT4000P/6000P and
1723 GXT4500P/6500P display adaptor based on Raster Engine RC1000,
1724 found on some IBM System P (pSeries) machines. This driver
1725 doesn't use Geometry Engine GT1000. This driver also supports
1726 AGP Fire GL2/3/4 cards on x86.
1729 tristate "PS3 GPU framebuffer driver"
1730 depends on FB && PS3_PS3AV
1731 select FB_SYS_FILLRECT
1732 select FB_SYS_COPYAREA
1733 select FB_SYS_IMAGEBLIT
1736 Include support for the virtual frame buffer in the PS3 platform.
1738 config FB_PS3_DEFAULT_SIZE_M
1739 int "PS3 default frame buffer size (in MiB)"
1743 This is the default size (in MiB) of the virtual frame buffer in
1745 The default value can be overridden on the kernel command line
1746 using the "ps3fb" option (e.g. "ps3fb=9M");
1749 tristate "Xilinx frame buffer support"
1750 depends on FB && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
1751 select FB_IOMEM_HELPERS
1753 Include support for the Xilinx ML300/ML403 reference design
1754 framebuffer. ML300 carries a 640*480 LCD display on the board,
1755 ML403 uses a standard DB15 VGA connector.
1758 tristate "Goldfish Framebuffer"
1760 depends on GOLDFISH || COMPILE_TEST
1761 select FB_IOMEM_HELPERS
1763 Framebuffer driver for Goldfish Virtual Platform
1766 tristate "Cobalt server LCD frame buffer support"
1767 depends on FB && MIPS_COBALT
1768 select FB_IOMEM_HELPERS
1771 bool "SH7760/SH7763/SH7720/SH7721 LCDC support"
1772 depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \
1773 || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721)
1774 select FB_IOMEM_HELPERS
1776 Support for the SH7760/SH7763/SH7720/SH7721 integrated
1777 (D)STN/TFT LCD Controller.
1778 Supports display resolutions up to 1024x1024 pixel, grayscale and
1779 color operation, with depths ranging from 1 bpp to 8 bpp monochrome
1780 and 8, 15 or 16 bpp color; 90 degrees clockwise display rotation for
1781 panels <= 320 pixel horizontal resolution.
1784 tristate "DA8xx/OMAP-L1xx/AM335x Framebuffer support"
1785 depends on FB && HAVE_CLK && HAS_IOMEM
1786 depends on ARCH_DAVINCI_DA8XX || SOC_AM33XX || COMPILE_TEST
1787 select FB_CFB_REV_PIXELS_IN_BYTE
1788 select FB_IOMEM_HELPERS
1789 select FB_MODE_HELPERS
1790 select VIDEOMODE_HELPERS
1792 This is the frame buffer device driver for the TI LCD controller
1793 found on DA8xx/OMAP-L1xx/AM335x SoCs.
1797 tristate "Virtual Frame Buffer support (ONLY FOR TESTING!)"
1799 select FB_SYS_FILLRECT
1800 select FB_SYS_COPYAREA
1801 select FB_SYS_IMAGEBLIT
1804 This is a `virtual' frame buffer device. It operates on a chunk of
1805 unswappable kernel memory instead of on the memory of a graphics
1806 board. This means you cannot see any output sent to this frame
1807 buffer device, while it does consume precious memory. The main use
1808 of this frame buffer device is testing and debugging the frame
1809 buffer subsystem. Do NOT enable it for normal systems! To protect
1810 the innocent, it has to be enabled explicitly at boot time using the
1811 kernel option `video=vfb:'.
1813 To compile this driver as a module, choose M here: the
1814 module will be called vfb. In order to load it, you must use
1815 the vfb_enable=1 option.
1819 config XEN_FBDEV_FRONTEND
1820 tristate "Xen virtual frame buffer support"
1821 depends on FB && XEN
1822 select FB_SYSMEM_HELPERS_DEFERRED
1823 select XEN_XENBUS_FRONTEND
1826 This driver implements the front-end of the Xen virtual
1827 frame buffer driver. It communicates with a back-end
1831 tristate "E-Ink Metronome/8track controller support"
1833 select FB_SYSMEM_HELPERS_DEFERRED
1835 This driver implements support for the E-Ink Metronome
1836 controller. The pre-release name for this device was 8track
1837 and could also have been called by some vendors as PVI-nnnn.
1840 tristate "Fujitsu MB862xx GDC support"
1842 depends on PCI || (OF && PPC)
1843 select FB_IOMEM_HELPERS
1844 select VIDEO_NOMODESET
1846 Frame buffer driver for Fujitsu Carmine/Coral-P(A)/Lime controllers.
1849 prompt "GDC variant"
1850 depends on FB_MB862XX
1852 config FB_MB862XX_PCI_GDC
1853 bool "Carmine/Coral-P(A) GDC"
1856 This enables framebuffer support for Fujitsu Carmine/Coral-P(A)
1857 PCI graphics controller devices.
1859 config FB_MB862XX_LIME
1861 depends on OF && PPC
1862 select FB_FOREIGN_ENDIAN
1863 select FB_LITTLE_ENDIAN
1865 Framebuffer support for Fujitsu Lime GDC on host CPU bus.
1869 config FB_MB862XX_I2C
1870 bool "Support I2C bus on MB862XX GDC"
1871 depends on FB_MB862XX && I2C
1872 depends on FB_MB862XX=m || I2C=y
1875 Selecting this option adds Coral-P(A)/Lime GDC I2C bus adapter
1876 driver to support accessing I2C devices on controller's I2C bus.
1877 These are usually some video decoder chips.
1880 tristate "EP93XX frame buffer support"
1881 depends on FB && ARCH_EP93XX
1882 select FB_IOMEM_HELPERS
1884 Framebuffer driver for the Cirrus Logic EP93XX series of processors.
1885 This driver is also available as a module. The module will be called
1888 config FB_PRE_INIT_FB
1889 bool "Don't reinitialize, use bootloader's GDC/Display configuration"
1890 depends on FB && FB_MB862XX_LIME
1892 Select this option if display contents should be inherited as set by
1895 config FB_BROADSHEET
1896 tristate "E-Ink Broadsheet/Epson S1D13521 controller support"
1897 depends on FB && (ARCH_PXA || COMPILE_TEST)
1898 select FB_SYSMEM_HELPERS_DEFERRED
1900 This driver implements support for the E-Ink Broadsheet
1901 controller. The release name for this device was Epson S1D13521
1902 and could also have been called by other names when coupled with
1906 tristate "Microsoft Hyper-V Synthetic Video support"
1907 depends on FB && HYPERV
1908 select DMA_CMA if HAVE_DMA_CONTIGUOUS && CMA
1909 select FB_IOMEM_HELPERS_DEFERRED
1910 select VIDEO_NOMODESET
1912 This framebuffer driver supports Microsoft Hyper-V Synthetic Video.
1915 tristate "Simple framebuffer support"
1917 depends on !DRM_SIMPLEDRM
1918 select APERTURE_HELPERS
1919 select FB_IOMEM_HELPERS
1921 Say Y if you want support for a simple frame-buffer.
1923 This driver assumes that the display hardware has been initialized
1924 before the kernel boots, and the kernel will simply render to the
1925 pre-allocated frame buffer surface.
1927 Configuration re: surface address, size, and format must be provided
1928 through device tree, or plain old platform data.
1931 tristate "Solomon SSD1307 framebuffer support"
1932 depends on FB && I2C
1933 depends on GPIOLIB || COMPILE_TEST
1935 select FB_SYSMEM_HELPERS_DEFERRED
1937 This driver implements support for the Solomon SSD1307
1938 OLED controller over I2C.
1941 tristate "Silicon Motion SM712 framebuffer support"
1942 depends on FB && PCI
1943 select FB_IOMEM_HELPERS
1944 select VIDEO_NOMODESET
1946 Frame buffer driver for the Silicon Motion SM710, SM712, SM721
1949 This driver is also available as a module. The module will be
1950 called sm712fb. If you want to compile it as a module, say M
1951 here and read <file:Documentation/kbuild/modules.rst>.
1953 source "drivers/video/fbdev/omap/Kconfig"
1954 source "drivers/video/fbdev/omap2/Kconfig"
1955 source "drivers/video/fbdev/mmp/Kconfig"
1957 source "drivers/video/fbdev/core/Kconfig"