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