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