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