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