Merge tag 'topic/remove-fbcon-notifiers-2019-06-14-1' of git://anongit.freedesktop...
[linux-2.6-microblaze.git] / drivers / video / fbdev / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # fbdev configuration
4 #
5
6 config FB_CMDLINE
7         bool
8
9 config FB_NOTIFY
10         bool
11
12 menuconfig 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.txt>
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
48 config 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
63 config FB_DDC
64         tristate
65         depends on FB
66         select I2C_ALGOBIT
67         select I2C
68
69 config 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
76 config 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
84 config 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
92 config 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
100 config 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
108 config 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
116 config 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
124 config 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
132 config 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
139 menuconfig 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
148 choice
149         prompt "Choice endianness support"
150         depends on FB_FOREIGN_ENDIAN
151
152 config FB_BOTH_ENDIAN
153         bool "Support for Big- and Little-Endian framebuffers"
154
155 config FB_BIG_ENDIAN
156         bool "Support for Big-Endian framebuffers only"
157
158 config FB_LITTLE_ENDIAN
159         bool "Support for Little-Endian framebuffers only"
160
161 endchoice
162
163 config FB_SYS_FOPS
164         tristate
165         depends on FB
166
167 config FB_DEFERRED_IO
168         bool
169         depends on FB
170
171 config FB_HECUBA
172         tristate
173         depends on FB
174         depends on FB_DEFERRED_IO
175
176 config FB_SVGALIB
177         tristate
178         depends on FB
179         ---help---
180           Common utility functions useful to fbdev drivers of VGA-based
181           cards.
182
183 config FB_MACMODES
184         tristate
185         depends on FB
186
187 config FB_BACKLIGHT
188         tristate
189         depends on FB
190         select BACKLIGHT_CLASS_DEVICE
191
192 config 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
202 config 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
219 comment "Frame buffer hardware drivers"
220         depends on FB
221
222 config 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
231 config 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.txt>.
245
246           Say N unless you have such a graphics board or plan to get one
247           before you next recompile the kernel.
248
249 config 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
269 config 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
275 config 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.txt>.  The module
293           will be called amba-clcd.
294
295 config 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
306 config 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
319 config 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
333 config 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
344 config 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
356 config 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
365 config 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
375 config FB_APOLLO
376         bool
377         depends on (FB = y) && APOLLO
378         default y
379         select FB_CFB_FILLRECT
380         select FB_CFB_IMAGEBLIT
381
382 config 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
390 config 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
400 config 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
408 config 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
417 config 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
426 config 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
436 config FB_ARC
437         tristate "Arc Monochrome LCD board support"
438         depends on FB && X86
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
452 config 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
462 config 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
473 config FB_CONTROL
474         bool "Apple \"control\" display support"
475         depends on (FB = y) && PPC_PMAC && PPC32
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
484 config 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
495 config 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
506 config 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
516 config 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
525 config 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
534 config 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
549 config 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
569 config 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
577 config FB_HP300
578         bool
579         depends on (FB = y) && DIO
580         select FB_CFB_IMAGEBLIT
581         default y
582
583 config FB_TGA
584         tristate "TGA/SFB+ framebuffer support"
585         depends on FB && (ALPHA || TC)
586         select FB_CFB_FILLRECT
587         select FB_CFB_COPYAREA
588         select FB_CFB_IMAGEBLIT
589         select BITREVERSE
590         ---help---
591           This is the frame buffer device driver for generic TGA and SFB+
592           graphic cards.  These include DEC ZLXp-E1, -E2 and -E3 PCI cards,
593           also known as PBXGA-A, -B and -C, and DEC ZLX-E1, -E2 and -E3
594           TURBOchannel cards, also known as PMAGD-A, -B and -C.
595
596           Due to hardware limitations ZLX-E2 and E3 cards are not supported
597           for DECstation 5000/200 systems.  Additionally due to firmware
598           limitations these cards may cause troubles with booting DECstation
599           5000/240 and /260 systems, but are fully supported under Linux if
600           you manage to get it going. ;-)
601
602           Say Y if you have one of those.
603
604 config FB_UVESA
605         tristate "Userspace VESA VGA graphics support"
606         depends on FB && CONNECTOR
607         select FB_CFB_FILLRECT
608         select FB_CFB_COPYAREA
609         select FB_CFB_IMAGEBLIT
610         select FB_MODE_HELPERS
611         help
612           This is the frame buffer driver for generic VBE 2.0 compliant
613           graphic cards. It can also take advantage of VBE 3.0 features,
614           such as refresh rate adjustment.
615
616           This driver generally provides more features than vesafb but
617           requires a userspace helper application called 'v86d'. See
618           <file:Documentation/fb/uvesafb.txt> for more information.
619
620           If unsure, say N.
621
622 config FB_VESA
623         bool "VESA VGA graphics support"
624         depends on (FB = y) && X86
625         select FB_CFB_FILLRECT
626         select FB_CFB_COPYAREA
627         select FB_CFB_IMAGEBLIT
628         select FB_BOOT_VESA_SUPPORT
629         help
630           This is the frame buffer device driver for generic VESA 2.0
631           compliant graphic cards. The older VESA 1.2 cards are not supported.
632           You will get a boot time penguin logo at no additional cost. Please
633           read <file:Documentation/fb/vesafb.txt>. If unsure, say Y.
634
635 config FB_EFI
636         bool "EFI-based Framebuffer Support"
637         depends on (FB = y) && !IA64 && EFI
638         select DRM_PANEL_ORIENTATION_QUIRKS
639         select FB_CFB_FILLRECT
640         select FB_CFB_COPYAREA
641         select FB_CFB_IMAGEBLIT
642         help
643           This is the EFI frame buffer device driver. If the firmware on
644           your platform is EFI 1.10 or UEFI 2.0, select Y to add support for
645           using the EFI framebuffer as your console.
646
647 config FB_N411
648         tristate "N411 Apollo/Hecuba devkit support"
649         depends on FB && X86 && MMU
650         select FB_SYS_FILLRECT
651         select FB_SYS_COPYAREA
652         select FB_SYS_IMAGEBLIT
653         select FB_SYS_FOPS
654         select FB_DEFERRED_IO
655         select FB_HECUBA
656         help
657           This enables support for the Apollo display controller in its
658           Hecuba form using the n411 devkit.
659
660 config FB_HGA
661         tristate "Hercules mono graphics support"
662         depends on FB && X86
663         help
664           Say Y here if you have a Hercules mono graphics card.
665
666           To compile this driver as a module, choose M here: the
667           module will be called hgafb.
668
669           As this card technology is at least 25 years old,
670           most people will answer N here.
671
672 config FB_GBE
673         bool "SGI Graphics Backend frame buffer support"
674         depends on (FB = y) && HAS_IOMEM
675         depends on SGI_IP32 || COMPILE_TEST
676         select FB_CFB_FILLRECT
677         select FB_CFB_COPYAREA
678         select FB_CFB_IMAGEBLIT
679         help
680           This is the frame buffer device driver for SGI Graphics Backend.
681           This chip is used in SGI O2 and Visual Workstation 320/540.
682
683 config FB_GBE_MEM
684         int "Video memory size in MB"
685         depends on FB_GBE
686         default 4
687         help
688           This is the amount of memory reserved for the framebuffer,
689           which can be any value between 1MB and 8MB.
690
691 config FB_SBUS
692         bool "SBUS and UPA framebuffers"
693         depends on (FB = y) && SPARC
694         help
695           Say Y if you want support for SBUS or UPA based frame buffer device.
696
697 config FB_BW2
698         bool "BWtwo support"
699         depends on (FB = y) && (SPARC && FB_SBUS)
700         select FB_CFB_FILLRECT
701         select FB_CFB_COPYAREA
702         select FB_CFB_IMAGEBLIT
703         help
704           This is the frame buffer device driver for the BWtwo frame buffer.
705
706 config FB_CG3
707         bool "CGthree support"
708         depends on (FB = y) && (SPARC && FB_SBUS)
709         select FB_CFB_FILLRECT
710         select FB_CFB_COPYAREA
711         select FB_CFB_IMAGEBLIT
712         help
713           This is the frame buffer device driver for the CGthree frame buffer.
714
715 config FB_CG6
716         bool "CGsix (GX,TurboGX) support"
717         depends on (FB = y) && (SPARC && FB_SBUS)
718         select FB_CFB_COPYAREA
719         select FB_CFB_IMAGEBLIT
720         help
721           This is the frame buffer device driver for the CGsix (GX, TurboGX)
722           frame buffer.
723
724 config FB_FFB
725         bool "Creator/Creator3D/Elite3D support"
726         depends on FB_SBUS && SPARC64
727         select FB_CFB_COPYAREA
728         select FB_CFB_IMAGEBLIT
729         help
730           This is the frame buffer device driver for the Creator, Creator3D,
731           and Elite3D graphics boards.
732
733 config FB_TCX
734         bool "TCX (SS4/SS5 only) support"
735         depends on FB_SBUS
736         select FB_CFB_FILLRECT
737         select FB_CFB_COPYAREA
738         select FB_CFB_IMAGEBLIT
739         help
740           This is the frame buffer device driver for the TCX 24/8bit frame
741           buffer.
742
743 config FB_CG14
744         bool "CGfourteen (SX) support"
745         depends on FB_SBUS
746         select FB_CFB_FILLRECT
747         select FB_CFB_COPYAREA
748         select FB_CFB_IMAGEBLIT
749         help
750           This is the frame buffer device driver for the CGfourteen frame
751           buffer on Desktop SPARCsystems with the SX graphics option.
752
753 config FB_P9100
754         bool "P9100 (Sparcbook 3 only) support"
755         depends on FB_SBUS
756         select FB_CFB_FILLRECT
757         select FB_CFB_COPYAREA
758         select FB_CFB_IMAGEBLIT
759         help
760           This is the frame buffer device driver for the P9100 card
761           supported on Sparcbook 3 machines.
762
763 config FB_LEO
764         bool "Leo (ZX) support"
765         depends on FB_SBUS
766         select FB_CFB_FILLRECT
767         select FB_CFB_COPYAREA
768         select FB_CFB_IMAGEBLIT
769         help
770           This is the frame buffer device driver for the SBUS-based Sun ZX
771           (leo) frame buffer cards.
772
773 config FB_XVR500
774         bool "Sun XVR-500 3DLABS Wildcat support"
775         depends on (FB = y) && PCI && SPARC64
776         select FB_CFB_FILLRECT
777         select FB_CFB_COPYAREA
778         select FB_CFB_IMAGEBLIT
779         help
780           This is the framebuffer device for the Sun XVR-500 and similar
781           graphics cards based upon the 3DLABS Wildcat chipset.  The driver
782           only works on sparc64 systems where the system firmware has
783           mostly initialized the card already.  It is treated as a
784           completely dumb framebuffer device.
785
786 config FB_XVR2500
787         bool "Sun XVR-2500 3DLABS Wildcat support"
788         depends on (FB = y) && PCI && SPARC64
789         select FB_CFB_FILLRECT
790         select FB_CFB_COPYAREA
791         select FB_CFB_IMAGEBLIT
792         help
793           This is the framebuffer device for the Sun XVR-2500 and similar
794           graphics cards based upon the 3DLABS Wildcat chipset.  The driver
795           only works on sparc64 systems where the system firmware has
796           mostly initialized the card already.  It is treated as a
797           completely dumb framebuffer device.
798
799 config FB_XVR1000
800         bool "Sun XVR-1000 support"
801         depends on (FB = y) && SPARC64
802         select FB_CFB_FILLRECT
803         select FB_CFB_COPYAREA
804         select FB_CFB_IMAGEBLIT
805         help
806           This is the framebuffer device for the Sun XVR-1000 and similar
807           graphics cards.  The driver only works on sparc64 systems where
808           the system firmware has mostly initialized the card already.  It
809           is treated as a completely dumb framebuffer device.
810
811 config FB_PVR2
812         tristate "NEC PowerVR 2 display support"
813         depends on FB && HAS_IOMEM
814         depends on SH_DREAMCAST || COMPILE_TEST
815         select FB_CFB_FILLRECT
816         select FB_CFB_COPYAREA
817         select FB_CFB_IMAGEBLIT
818         ---help---
819           Say Y here if you have a PowerVR 2 card in your box.  If you plan to
820           run linux on your Dreamcast, you will have to say Y here.
821           This driver may or may not work on other PowerVR 2 cards, but is
822           totally untested.  Use at your own risk.  If unsure, say N.
823
824           To compile this driver as a module, choose M here: the
825           module will be called pvr2fb.
826
827           You can pass several parameters to the driver at boot time or at
828           module load time.  The parameters look like "video=pvr2:XXX", where
829           the meaning of XXX can be found at the end of the main source file
830           (<file:drivers/video/pvr2fb.c>). Please see the file
831           <file:Documentation/fb/pvr2fb.txt>.
832
833 config FB_OPENCORES
834         tristate "OpenCores VGA/LCD core 2.0 framebuffer support"
835         depends on FB && HAS_DMA
836         select FB_CFB_FILLRECT
837         select FB_CFB_COPYAREA
838         select FB_CFB_IMAGEBLIT
839         help
840           This enables support for the OpenCores VGA/LCD core.
841
842           The OpenCores VGA/LCD core is typically used together with
843           softcore CPUs (e.g. OpenRISC or Microblaze) or hard processor
844           systems (e.g. Altera socfpga or Xilinx Zynq) on FPGAs.
845
846           The source code and specification for the core is available at
847           <http://opencores.org/project,vga_lcd>
848
849 config FB_S1D13XXX
850         tristate "Epson S1D13XXX framebuffer support"
851         depends on FB
852         select FB_CFB_FILLRECT
853         select FB_CFB_COPYAREA
854         select FB_CFB_IMAGEBLIT
855         help
856           Support for S1D13XXX framebuffer device family (currently only
857           working with S1D13806). Product specs at
858           <http://vdc.epson.com/>
859
860 config FB_ATMEL
861         tristate "AT91 LCD Controller support"
862         depends on FB && OF && HAVE_CLK && HAS_IOMEM
863         depends on HAVE_FB_ATMEL || COMPILE_TEST
864         select FB_BACKLIGHT
865         select FB_CFB_FILLRECT
866         select FB_CFB_COPYAREA
867         select FB_CFB_IMAGEBLIT
868         select FB_MODE_HELPERS
869         select VIDEOMODE_HELPERS
870         help
871           This enables support for the AT91 LCD Controller.
872
873 config FB_NVIDIA
874         tristate "nVidia Framebuffer Support"
875         depends on FB && PCI
876         select FB_BACKLIGHT if FB_NVIDIA_BACKLIGHT
877         select FB_MODE_HELPERS
878         select FB_CFB_FILLRECT
879         select FB_CFB_COPYAREA
880         select FB_CFB_IMAGEBLIT
881         select BITREVERSE
882         select VGASTATE
883         help
884           This driver supports graphics boards with the nVidia chips, TNT
885           and newer. For very old chipsets, such as the RIVA128, then use
886           the rivafb.
887           Say Y if you have such a graphics board.
888
889           To compile this driver as a module, choose M here: the
890           module will be called nvidiafb.
891
892 config FB_NVIDIA_I2C
893         bool "Enable DDC Support"
894         depends on FB_NVIDIA
895         select FB_DDC
896         help
897           This enables I2C support for nVidia Chipsets.  This is used
898           only for getting EDID information from the attached display
899           allowing for robust video mode handling and switching.
900
901           Because fbdev-2.6 requires that drivers must be able to
902           independently validate video mode parameters, you should say Y
903           here.
904
905 config FB_NVIDIA_DEBUG
906         bool "Lots of debug output"
907         depends on FB_NVIDIA
908         help
909           Say Y here if you want the nVidia driver to output all sorts
910           of debugging information to provide to the maintainer when
911           something goes wrong.
912
913 config FB_NVIDIA_BACKLIGHT
914         bool "Support for backlight control"
915         depends on FB_NVIDIA
916         default y
917         help
918           Say Y here if you want to control the backlight of your display.
919
920 config FB_RIVA
921         tristate "nVidia Riva support"
922         depends on FB && PCI
923         select FB_BACKLIGHT if FB_RIVA_BACKLIGHT
924         select FB_MODE_HELPERS
925         select FB_CFB_FILLRECT
926         select FB_CFB_COPYAREA
927         select FB_CFB_IMAGEBLIT
928         select BITREVERSE
929         select VGASTATE
930         help
931           This driver supports graphics boards with the nVidia Riva/Geforce
932           chips.
933           Say Y if you have such a graphics board.
934
935           To compile this driver as a module, choose M here: the
936           module will be called rivafb.
937
938 config FB_RIVA_I2C
939         bool "Enable DDC Support"
940         depends on FB_RIVA
941         select FB_DDC
942         help
943           This enables I2C support for nVidia Chipsets.  This is used
944           only for getting EDID information from the attached display
945           allowing for robust video mode handling and switching.
946
947           Because fbdev-2.6 requires that drivers must be able to
948           independently validate video mode parameters, you should say Y
949           here.
950
951 config FB_RIVA_DEBUG
952         bool "Lots of debug output"
953         depends on FB_RIVA
954         help
955           Say Y here if you want the Riva driver to output all sorts
956           of debugging information to provide to the maintainer when
957           something goes wrong.
958
959 config FB_RIVA_BACKLIGHT
960         bool "Support for backlight control"
961         depends on FB_RIVA
962         default y
963         help
964           Say Y here if you want to control the backlight of your display.
965
966 config FB_I740
967         tristate "Intel740 support"
968         depends on FB && PCI
969         select FB_MODE_HELPERS
970         select FB_CFB_FILLRECT
971         select FB_CFB_COPYAREA
972         select FB_CFB_IMAGEBLIT
973         select VGASTATE
974         select FB_DDC
975         help
976           This driver supports graphics cards based on Intel740 chip.
977
978 config FB_I810
979         tristate "Intel 810/815 support"
980         depends on FB && PCI && X86_32 && AGP_INTEL
981         select FB_MODE_HELPERS
982         select FB_CFB_FILLRECT
983         select FB_CFB_COPYAREA
984         select FB_CFB_IMAGEBLIT
985         select VGASTATE
986         help
987           This driver supports the on-board graphics built in to the Intel 810
988           and 815 chipsets.  Say Y if you have and plan to use such a board.
989
990           To compile this driver as a module, choose M here: the
991           module will be called i810fb.
992
993           For more information, please read
994           <file:Documentation/fb/intel810.txt>
995
996 config FB_I810_GTF
997         bool "use VESA Generalized Timing Formula"
998         depends on FB_I810
999         help
1000           If you say Y, then the VESA standard, Generalized Timing Formula
1001           or GTF, will be used to calculate the required video timing values
1002           per video mode.  Since the GTF allows nondiscrete timings
1003           (nondiscrete being a range of values as opposed to discrete being a
1004           set of values), you'll be able to use any combination of horizontal
1005           and vertical resolutions, and vertical refresh rates without having
1006           to specify your own timing parameters.  This is especially useful
1007           to maximize the performance of an aging display, or if you just
1008           have a display with nonstandard dimensions. A VESA compliant
1009           monitor is recommended, but can still work with non-compliant ones.
1010           If you need or want this, then select this option. The timings may
1011           not be compliant with Intel's recommended values. Use at your own
1012           risk.
1013
1014           If you say N, the driver will revert to discrete video timings
1015           using a set recommended by Intel in their documentation.
1016
1017           If unsure, say N.
1018
1019 config FB_I810_I2C
1020         bool "Enable DDC Support"
1021         depends on FB_I810 && FB_I810_GTF
1022         select FB_DDC
1023         help
1024           Add DDC/I2C support for i810fb.  This will allow the driver to get
1025           display information, especially for monitors with fickle timings.
1026
1027           If unsure, say Y.
1028
1029 config FB_LE80578
1030         tristate "Intel LE80578 (Vermilion) support"
1031         depends on FB && PCI && X86
1032         select FB_MODE_HELPERS
1033         select FB_CFB_FILLRECT
1034         select FB_CFB_COPYAREA
1035         select FB_CFB_IMAGEBLIT
1036         help
1037           This driver supports the LE80578 (Vermilion Range) chipset
1038
1039 config FB_CARILLO_RANCH
1040         tristate "Intel Carillo Ranch support"
1041         depends on FB_LE80578 && FB && PCI && X86
1042         help
1043           This driver supports the LE80578 (Carillo Ranch) board
1044
1045 config FB_INTEL
1046         tristate "Intel 830M/845G/852GM/855GM/865G/915G/945G/945GM/965G/965GM support"
1047         depends on FB && PCI && X86 && AGP_INTEL && EXPERT
1048         select FB_MODE_HELPERS
1049         select FB_CFB_FILLRECT
1050         select FB_CFB_COPYAREA
1051         select FB_CFB_IMAGEBLIT
1052         select FB_BOOT_VESA_SUPPORT if FB_INTEL = y
1053         depends on !DRM_I915
1054         help
1055           This driver supports the on-board graphics built in to the Intel
1056           830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM/965G/965GM chipsets.
1057           Say Y if you have and plan to use such a board.
1058
1059           To make FB_INTEL=Y work you need to say AGP_INTEL=y too.
1060
1061           To compile this driver as a module, choose M here: the
1062           module will be called intelfb.
1063
1064           For more information, please read <file:Documentation/fb/intelfb.txt>
1065
1066 config FB_INTEL_DEBUG
1067         bool "Intel driver Debug Messages"
1068         depends on FB_INTEL
1069         ---help---
1070           Say Y here if you want the Intel driver to output all sorts
1071           of debugging information to provide to the maintainer when
1072           something goes wrong.
1073
1074 config FB_INTEL_I2C
1075         bool "DDC/I2C for Intel framebuffer support"
1076         depends on FB_INTEL
1077         select FB_DDC
1078         default y
1079         help
1080           Say Y here if you want DDC/I2C support for your on-board Intel graphics.
1081
1082 config FB_MATROX
1083         tristate "Matrox acceleration"
1084         depends on FB && PCI
1085         select FB_CFB_FILLRECT
1086         select FB_CFB_COPYAREA
1087         select FB_CFB_IMAGEBLIT
1088         select FB_TILEBLITTING
1089         select FB_MACMODES if PPC_PMAC
1090         ---help---
1091           Say Y here if you have a Matrox Millennium, Matrox Millennium II,
1092           Matrox Mystique, Matrox Mystique 220, Matrox Productiva G100, Matrox
1093           Mystique G200, Matrox Millennium G200, Matrox Marvel G200 video,
1094           Matrox G400, G450 or G550 card in your box.
1095
1096           To compile this driver as a module, choose M here: the
1097           module will be called matroxfb.
1098
1099           You can pass several parameters to the driver at boot time or at
1100           module load time. The parameters look like "video=matroxfb:XXX", and
1101           are described in <file:Documentation/fb/matroxfb.txt>.
1102
1103 config FB_MATROX_MILLENIUM
1104         bool "Millennium I/II support"
1105         depends on FB_MATROX
1106         help
1107           Say Y here if you have a Matrox Millennium or Matrox Millennium II
1108           video card. If you select "Advanced lowlevel driver options" below,
1109           you should check 4 bpp packed pixel, 8 bpp packed pixel, 16 bpp
1110           packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can
1111           also use font widths different from 8.
1112
1113 config FB_MATROX_MYSTIQUE
1114         bool "Mystique support"
1115         depends on FB_MATROX
1116         help
1117           Say Y here if you have a Matrox Mystique or Matrox Mystique 220
1118           video card. If you select "Advanced lowlevel driver options" below,
1119           you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp
1120           packed pixel and 32 bpp packed pixel. You can also use font widths
1121           different from 8.
1122
1123 config FB_MATROX_G
1124         bool "G100/G200/G400/G450/G550 support"
1125         depends on FB_MATROX
1126         ---help---
1127           Say Y here if you have a Matrox G100, G200, G400, G450 or G550 based
1128           video card. If you select "Advanced lowlevel driver options", you
1129           should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed
1130           pixel and 32 bpp packed pixel. You can also use font widths
1131           different from 8.
1132
1133           If you need support for G400 secondary head, you must say Y to
1134           "Matrox I2C support" and "G400 second head support" right below.
1135           G450/G550 secondary head and digital output are supported without
1136           additional modules.
1137
1138           The driver starts in monitor mode. You must use the matroxset tool
1139           (available at <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to
1140           swap primary and secondary head outputs, or to change output mode.
1141           Secondary head driver always start in 640x480 resolution and you
1142           must use fbset to change it.
1143
1144           Do not forget that second head supports only 16 and 32 bpp
1145           packed pixels, so it is a good idea to compile them into the kernel
1146           too. You can use only some font widths, as the driver uses generic
1147           painting procedures (the secondary head does not use acceleration
1148           engine).
1149
1150           G450/G550 hardware can display TV picture only from secondary CRTC,
1151           and it performs no scaling, so picture must have 525 or 625 lines.
1152
1153 config FB_MATROX_I2C
1154         tristate "Matrox I2C support"
1155         depends on FB_MATROX
1156         select FB_DDC
1157         ---help---
1158           This drivers creates I2C buses which are needed for accessing the
1159           DDC (I2C) bus present on all Matroxes, an I2C bus which
1160           interconnects Matrox optional devices, like MGA-TVO on G200 and
1161           G400, and the secondary head DDC bus, present on G400 only.
1162
1163           You can say Y or M here if you want to experiment with monitor
1164           detection code. You must say Y or M here if you want to use either
1165           second head of G400 or MGA-TVO on G200 or G400.
1166
1167           If you compile it as module, it will create a module named
1168           i2c-matroxfb.
1169
1170 config FB_MATROX_MAVEN
1171         tristate "G400 second head support"
1172         depends on FB_MATROX_G && FB_MATROX_I2C
1173         ---help---
1174           WARNING !!! This support does not work with G450 !!!
1175
1176           Say Y or M here if you want to use a secondary head (meaning two
1177           monitors in parallel) on G400 or MGA-TVO add-on on G200. Secondary
1178           head is not compatible with accelerated XFree 3.3.x SVGA servers -
1179           secondary head output is blanked while you are in X. With XFree
1180           3.9.17 preview you can use both heads if you use SVGA over fbdev or
1181           the fbdev driver on first head and the fbdev driver on second head.
1182
1183           If you compile it as module, two modules are created,
1184           matroxfb_crtc2 and matroxfb_maven. Matroxfb_maven is needed for
1185           both G200 and G400, matroxfb_crtc2 is needed only by G400. You must
1186           also load i2c-matroxfb to get it to run.
1187
1188           The driver starts in monitor mode and you must use the matroxset
1189           tool (available at
1190           <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to switch it to
1191           PAL or NTSC or to swap primary and secondary head outputs.
1192           Secondary head driver also always start in 640x480 resolution, you
1193           must use fbset to change it.
1194
1195           Also do not forget that second head supports only 16 and 32 bpp
1196           packed pixels, so it is a good idea to compile them into the kernel
1197           too.  You can use only some font widths, as the driver uses generic
1198           painting procedures (the secondary head does not use acceleration
1199           engine).
1200
1201 config FB_RADEON
1202         tristate "ATI Radeon display support"
1203         depends on FB && PCI
1204         select FB_BACKLIGHT if FB_RADEON_BACKLIGHT
1205         select FB_MODE_HELPERS
1206         select FB_CFB_FILLRECT
1207         select FB_CFB_COPYAREA
1208         select FB_CFB_IMAGEBLIT
1209         select FB_MACMODES if PPC
1210         help
1211           Choose this option if you want to use an ATI Radeon graphics card as
1212           a framebuffer device.  There are both PCI and AGP versions.  You
1213           don't need to choose this to run the Radeon in plain VGA mode.
1214
1215           There is a product page at
1216           http://products.amd.com/en-us/GraphicCardResult.aspx
1217
1218 config FB_RADEON_I2C
1219         bool "DDC/I2C for ATI Radeon support"
1220         depends on FB_RADEON
1221         select FB_DDC
1222         default y
1223         help
1224           Say Y here if you want DDC/I2C support for your Radeon board.
1225
1226 config FB_RADEON_BACKLIGHT
1227         bool "Support for backlight control"
1228         depends on FB_RADEON
1229         default y
1230         help
1231           Say Y here if you want to control the backlight of your display.
1232
1233 config FB_RADEON_DEBUG
1234         bool "Lots of debug output from Radeon driver"
1235         depends on FB_RADEON
1236         help
1237           Say Y here if you want the Radeon driver to output all sorts
1238           of debugging information to provide to the maintainer when
1239           something goes wrong.
1240
1241 config FB_ATY128
1242         tristate "ATI Rage128 display support"
1243         depends on FB && PCI
1244         select FB_CFB_FILLRECT
1245         select FB_CFB_COPYAREA
1246         select FB_CFB_IMAGEBLIT
1247         select FB_BACKLIGHT if FB_ATY128_BACKLIGHT
1248         select FB_MACMODES if PPC_PMAC
1249         help
1250           This driver supports graphics boards with the ATI Rage128 chips.
1251           Say Y if you have such a graphics board and read
1252           <file:Documentation/fb/aty128fb.txt>.
1253
1254           To compile this driver as a module, choose M here: the
1255           module will be called aty128fb.
1256
1257 config FB_ATY128_BACKLIGHT
1258         bool "Support for backlight control"
1259         depends on FB_ATY128
1260         default y
1261         help
1262           Say Y here if you want to control the backlight of your display.
1263
1264 config FB_ATY
1265         tristate "ATI Mach64 display support" if PCI || ATARI
1266         depends on FB && !SPARC32
1267         select FB_CFB_FILLRECT
1268         select FB_CFB_COPYAREA
1269         select FB_CFB_IMAGEBLIT
1270         select FB_BACKLIGHT if FB_ATY_BACKLIGHT
1271         select FB_MACMODES if PPC
1272         help
1273           This driver supports graphics boards with the ATI Mach64 chips.
1274           Say Y if you have such a graphics board.
1275
1276           To compile this driver as a module, choose M here: the
1277           module will be called atyfb.
1278
1279 config FB_ATY_CT
1280         bool "Mach64 CT/VT/GT/LT (incl. 3D RAGE) support"
1281         depends on PCI && FB_ATY
1282         default y if SPARC64 && PCI
1283         help
1284           Say Y here to support use of ATI's 64-bit Rage boards (or other
1285           boards based on the Mach64 CT, VT, GT, and LT chipsets) as a
1286           framebuffer device.  The ATI product support page for these boards
1287           is at <http://support.ati.com/products/pc/mach64/mach64.html>.
1288
1289 config FB_ATY_GENERIC_LCD
1290         bool "Mach64 generic LCD support"
1291         depends on FB_ATY_CT
1292         help
1293           Say Y if you have a laptop with an ATI Rage LT PRO, Rage Mobility,
1294           Rage XC, or Rage XL chipset.
1295
1296 config FB_ATY_GX
1297         bool "Mach64 GX support" if PCI
1298         depends on FB_ATY
1299         default y if ATARI
1300         help
1301           Say Y here to support use of the ATI Mach64 Graphics Expression
1302           board (or other boards based on the Mach64 GX chipset) as a
1303           framebuffer device.  The ATI product support page for these boards
1304           is at
1305           <http://support.ati.com/products/pc/mach64/graphics_xpression.html>.
1306
1307 config FB_ATY_BACKLIGHT
1308         bool "Support for backlight control"
1309         depends on FB_ATY
1310         default y
1311         help
1312           Say Y here if you want to control the backlight of your display.
1313
1314 config FB_S3
1315         tristate "S3 Trio/Virge support"
1316         depends on FB && PCI
1317         select FB_CFB_FILLRECT
1318         select FB_CFB_COPYAREA
1319         select FB_CFB_IMAGEBLIT
1320         select FB_TILEBLITTING
1321         select FB_SVGALIB
1322         select VGASTATE
1323         select FONT_8x16 if FRAMEBUFFER_CONSOLE
1324         ---help---
1325           Driver for graphics boards with S3 Trio / S3 Virge chip.
1326
1327 config FB_S3_DDC
1328         bool "DDC for S3 support"
1329         depends on FB_S3
1330         select FB_DDC
1331         default y
1332         help
1333           Say Y here if you want DDC support for your S3 graphics card.
1334
1335 config FB_SAVAGE
1336         tristate "S3 Savage support"
1337         depends on FB && PCI
1338         select FB_MODE_HELPERS
1339         select FB_CFB_FILLRECT
1340         select FB_CFB_COPYAREA
1341         select FB_CFB_IMAGEBLIT
1342         select VGASTATE
1343         help
1344           This driver supports notebooks and computers with S3 Savage PCI/AGP
1345           chips.
1346
1347           Say Y if you have such a graphics card.
1348
1349           To compile this driver as a module, choose M here; the module
1350           will be called savagefb.
1351
1352 config FB_SAVAGE_I2C
1353         bool "Enable DDC2 Support"
1354         depends on FB_SAVAGE
1355         select FB_DDC
1356         help
1357           This enables I2C support for S3 Savage Chipsets.  This is used
1358           only for getting EDID information from the attached display
1359           allowing for robust video mode handling and switching.
1360
1361           Because fbdev-2.6 requires that drivers must be able to
1362           independently validate video mode parameters, you should say Y
1363           here.
1364
1365 config FB_SAVAGE_ACCEL
1366         bool "Enable Console Acceleration"
1367         depends on FB_SAVAGE
1368         help
1369           This option will compile in console acceleration support. If
1370           the resulting framebuffer console has bothersome glitches, then
1371           choose N here.
1372
1373 config FB_SIS
1374         tristate "SiS/XGI display support"
1375         depends on FB && PCI
1376         select FB_CFB_FILLRECT
1377         select FB_CFB_COPYAREA
1378         select FB_CFB_IMAGEBLIT
1379         select FB_BOOT_VESA_SUPPORT if FB_SIS = y
1380         select FB_SIS_300 if !FB_SIS_315
1381         help
1382           This is the frame buffer device driver for the SiS 300, 315, 330
1383           and 340 series as well as XGI V3XT, V5, V8, Z7 graphics chipsets.
1384           Specs available at <http://www.sis.com> and <http://www.xgitech.com>.
1385
1386           To compile this driver as a module, choose M here; the module
1387           will be called sisfb.
1388
1389 config FB_SIS_300
1390         bool "SiS 300 series support"
1391         depends on FB_SIS
1392         help
1393           Say Y here to support use of the SiS 300/305, 540, 630 and 730.
1394
1395 config FB_SIS_315
1396         bool "SiS 315/330/340 series and XGI support"
1397         depends on FB_SIS
1398         help
1399           Say Y here to support use of the SiS 315, 330 and 340 series
1400           (315/H/PRO, 55x, 650, 651, 740, 330, 661, 741, 760, 761) as well
1401           as XGI V3XT, V5, V8 and Z7.
1402
1403 config FB_VIA
1404         tristate "VIA UniChrome (Pro) and Chrome9 display support"
1405         depends on FB && PCI && GPIOLIB && I2C && (X86 || COMPILE_TEST)
1406         select FB_CFB_FILLRECT
1407         select FB_CFB_COPYAREA
1408         select FB_CFB_IMAGEBLIT
1409         select I2C_ALGOBIT
1410         help
1411           This is the frame buffer device driver for Graphics chips of VIA
1412           UniChrome (Pro) Family (CLE266,PM800/CN400,P4M800CE/P4M800Pro/
1413           CN700/VN800,CX700/VX700,P4M890) and Chrome9 Family (K8M890,CN896
1414           /P4M900,VX800)
1415           Say Y if you have a VIA UniChrome graphics board.
1416
1417           To compile this driver as a module, choose M here: the
1418           module will be called viafb.
1419
1420 if FB_VIA
1421
1422 config FB_VIA_DIRECT_PROCFS
1423         bool "direct hardware access via procfs (DEPRECATED)(DANGEROUS)"
1424         help
1425           Allow direct hardware access to some output registers via procfs.
1426           This is dangerous but may provide the only chance to get the
1427           correct output device configuration.
1428           Its use is strongly discouraged.
1429
1430 config FB_VIA_X_COMPATIBILITY
1431         bool "X server compatibility"
1432         help
1433           This option reduces the functionality (power saving, ...) of the
1434           framebuffer to avoid negative impact on the OpenChrome X server.
1435           If you use any X server other than fbdev you should enable this
1436           otherwise it should be safe to disable it and allow using all
1437           features.
1438
1439 endif
1440
1441 config FB_NEOMAGIC
1442         tristate "NeoMagic display support"
1443         depends on FB && PCI
1444         select FB_MODE_HELPERS
1445         select FB_CFB_FILLRECT
1446         select FB_CFB_COPYAREA
1447         select FB_CFB_IMAGEBLIT
1448         select VGASTATE
1449         help
1450           This driver supports notebooks with NeoMagic PCI chips.
1451           Say Y if you have such a graphics card.
1452
1453           To compile this driver as a module, choose M here: the
1454           module will be called neofb.
1455
1456 config FB_KYRO
1457         tristate "IMG Kyro support"
1458         depends on FB && PCI
1459         select FB_CFB_FILLRECT
1460         select FB_CFB_COPYAREA
1461         select FB_CFB_IMAGEBLIT
1462         help
1463           Say Y here if you have a STG4000 / Kyro / PowerVR 3 based
1464           graphics board.
1465
1466           To compile this driver as a module, choose M here: the
1467           module will be called kyrofb.
1468
1469 config FB_3DFX
1470         tristate "3Dfx Banshee/Voodoo3/Voodoo5 display support"
1471         depends on FB && PCI
1472         select FB_CFB_IMAGEBLIT
1473         select FB_CFB_FILLRECT
1474         select FB_CFB_COPYAREA
1475         select FB_MODE_HELPERS
1476         help
1477           This driver supports graphics boards with the 3Dfx Banshee,
1478           Voodoo3 or VSA-100 (aka Voodoo4/5) chips. Say Y if you have
1479           such a graphics board.
1480
1481           To compile this driver as a module, choose M here: the
1482           module will be called tdfxfb.
1483
1484 config FB_3DFX_ACCEL
1485         bool "3Dfx Acceleration functions"
1486         depends on FB_3DFX
1487         ---help---
1488         This will compile the 3Dfx Banshee/Voodoo3/VSA-100 frame buffer
1489         device driver with acceleration functions.
1490
1491 config FB_3DFX_I2C
1492         bool "Enable DDC/I2C support"
1493         depends on FB_3DFX
1494         select FB_DDC
1495         default y
1496         help
1497           Say Y here if you want DDC/I2C support for your 3dfx Voodoo3.
1498
1499 config FB_VOODOO1
1500         tristate "3Dfx Voodoo Graphics (sst1) support"
1501         depends on FB && PCI
1502         select FB_CFB_FILLRECT
1503         select FB_CFB_COPYAREA
1504         select FB_CFB_IMAGEBLIT
1505         ---help---
1506           Say Y here if you have a 3Dfx Voodoo Graphics (Voodoo1/sst1) or
1507           Voodoo2 (cvg) based graphics card.
1508
1509           To compile this driver as a module, choose M here: the
1510           module will be called sstfb.
1511
1512           WARNING: Do not use any application that uses the 3D engine
1513           (namely glide) while using this driver.
1514           Please read the <file:Documentation/fb/sstfb.txt> for supported
1515           options and other important info  support.
1516
1517 config FB_VT8623
1518         tristate "VIA VT8623 support"
1519         depends on FB && PCI
1520         select FB_CFB_FILLRECT
1521         select FB_CFB_COPYAREA
1522         select FB_CFB_IMAGEBLIT
1523         select FB_TILEBLITTING
1524         select FB_SVGALIB
1525         select VGASTATE
1526         select FONT_8x16 if FRAMEBUFFER_CONSOLE
1527         ---help---
1528           Driver for CastleRock integrated graphics core in the
1529           VIA VT8623 [Apollo CLE266] chipset.
1530
1531 config FB_TRIDENT
1532         tristate "Trident/CyberXXX/CyberBlade support"
1533         depends on FB && PCI
1534         select FB_CFB_FILLRECT
1535         select FB_CFB_COPYAREA
1536         select FB_CFB_IMAGEBLIT
1537         select FB_DDC
1538         select FB_MODE_HELPERS
1539         ---help---
1540           This is the frame buffer device driver for Trident PCI/AGP chipsets.
1541           Supported chipset families are TGUI 9440/96XX, 3DImage, Blade3D
1542           and Blade XP.
1543           There are also integrated versions of these chips called CyberXXXX,
1544           CyberImage or CyberBlade. These chips are mostly found in laptops
1545           but also on some motherboards including early VIA EPIA motherboards.
1546           For more information, read <file:Documentation/fb/tridentfb.txt>
1547
1548           Say Y if you have such a graphics board.
1549
1550           To compile this driver as a module, choose M here: the
1551           module will be called tridentfb.
1552
1553 config FB_ARK
1554         tristate "ARK 2000PV support"
1555         depends on FB && PCI
1556         select FB_CFB_FILLRECT
1557         select FB_CFB_COPYAREA
1558         select FB_CFB_IMAGEBLIT
1559         select FB_TILEBLITTING
1560         select FB_SVGALIB
1561         select VGASTATE
1562         select FONT_8x16 if FRAMEBUFFER_CONSOLE
1563         ---help---
1564           Driver for PCI graphics boards with ARK 2000PV chip
1565           and ICS 5342 RAMDAC.
1566
1567 config FB_PM3
1568         tristate "Permedia3 support"
1569         depends on FB && PCI
1570         select FB_CFB_FILLRECT
1571         select FB_CFB_COPYAREA
1572         select FB_CFB_IMAGEBLIT
1573         help
1574           This is the frame buffer device driver for the 3DLabs Permedia3
1575           chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 &
1576           similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000
1577           and maybe other boards.
1578
1579 config FB_CARMINE
1580         tristate "Fujitsu carmine frame buffer support"
1581         depends on FB && PCI
1582         select FB_CFB_FILLRECT
1583         select FB_CFB_COPYAREA
1584         select FB_CFB_IMAGEBLIT
1585         help
1586           This is the frame buffer device driver for the Fujitsu Carmine chip.
1587           The driver provides two independent frame buffer devices.
1588
1589 choice
1590         depends on FB_CARMINE
1591         prompt "DRAM timing"
1592         default FB_CARMINE_DRAM_EVAL
1593
1594 config FB_CARMINE_DRAM_EVAL
1595         bool "Eval board timings"
1596         help
1597           Use timings which work on the eval card.
1598
1599 config CARMINE_DRAM_CUSTOM
1600         bool "Custom board timings"
1601         help
1602           Use custom board timings.
1603 endchoice
1604
1605 config FB_AU1100
1606         bool "Au1100 LCD Driver"
1607         depends on (FB = y) && MIPS_ALCHEMY
1608         select FB_CFB_FILLRECT
1609         select FB_CFB_COPYAREA
1610         select FB_CFB_IMAGEBLIT
1611         help
1612           This is the framebuffer driver for the AMD Au1100 SOC.  It can drive
1613           various panels and CRTs by passing in kernel cmd line option
1614           au1100fb:panel=<name>.
1615
1616 config FB_AU1200
1617         bool "Au1200/Au1300 LCD Driver"
1618         depends on (FB = y) && MIPS_ALCHEMY
1619         select FB_SYS_FILLRECT
1620         select FB_SYS_COPYAREA
1621         select FB_SYS_IMAGEBLIT
1622         select FB_SYS_FOPS
1623         help
1624           This is the framebuffer driver for the Au1200/Au1300 SOCs.
1625           It can drive various panels and CRTs by passing in kernel cmd line
1626           option au1200fb:panel=<name>.
1627
1628 config FB_VT8500
1629         bool "VIA VT8500 framebuffer support"
1630         depends on (FB = y) && ARM && ARCH_VT8500
1631         select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS)
1632         select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS)
1633         select FB_SYS_IMAGEBLIT
1634         select FB_MODE_HELPERS
1635         select VIDEOMODE_HELPERS
1636         help
1637           This is the framebuffer driver for VIA VT8500 integrated LCD
1638           controller.
1639
1640 config FB_WM8505
1641         bool "Wondermedia WM8xxx-series frame buffer support"
1642         depends on (FB = y) && ARM && ARCH_VT8500
1643         select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS)
1644         select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS)
1645         select FB_SYS_IMAGEBLIT
1646         select FB_MODE_HELPERS
1647         select VIDEOMODE_HELPERS
1648         help
1649           This is the framebuffer driver for WonderMedia WM8xxx-series
1650           integrated LCD controller. This driver covers the WM8505, WM8650
1651           and WM8850 SoCs.
1652
1653 config FB_WMT_GE_ROPS
1654         bool "VT8500/WM8xxx accelerated raster ops support"
1655         depends on (FB = y) && (FB_VT8500 || FB_WM8505)
1656         help
1657           This adds support for accelerated raster operations on the
1658           VIA VT8500 and Wondermedia 85xx series SoCs.
1659
1660 source "drivers/video/fbdev/geode/Kconfig"
1661
1662 config FB_HIT
1663         tristate "HD64461 Frame Buffer support"
1664         depends on FB && HD64461
1665         select FB_CFB_FILLRECT
1666         select FB_CFB_COPYAREA
1667         select FB_CFB_IMAGEBLIT
1668         help
1669           This is the frame buffer device driver for the Hitachi HD64461 LCD
1670           frame buffer card.
1671
1672 config FB_PMAG_AA
1673         tristate "PMAG-AA TURBOchannel framebuffer support"
1674         depends on FB && TC
1675         select FB_CFB_FILLRECT
1676         select FB_CFB_COPYAREA
1677         select FB_CFB_IMAGEBLIT
1678         help
1679           Support for the PMAG-AA TURBOchannel framebuffer card (1280x1024x1)
1680           used mainly in the MIPS-based DECstation series.
1681
1682 config FB_PMAG_BA
1683         tristate "PMAG-BA TURBOchannel framebuffer support"
1684         depends on FB && TC
1685         select FB_CFB_FILLRECT
1686         select FB_CFB_COPYAREA
1687         select FB_CFB_IMAGEBLIT
1688         help
1689           Support for the PMAG-BA TURBOchannel framebuffer card (1024x864x8)
1690           used mainly in the MIPS-based DECstation series.
1691
1692 config FB_PMAGB_B
1693         tristate "PMAGB-B TURBOchannel framebuffer support"
1694         depends on FB && TC
1695         select FB_CFB_FILLRECT
1696         select FB_CFB_COPYAREA
1697         select FB_CFB_IMAGEBLIT
1698         help
1699           Support for the PMAGB-B TURBOchannel framebuffer card used mainly
1700           in the MIPS-based DECstation series. The card is currently only
1701           supported in 1280x1024x8 mode.
1702
1703 config FB_MAXINE
1704         bool "Maxine (Personal DECstation) onboard framebuffer support"
1705         depends on (FB = y) && MACH_DECSTATION
1706         select FB_CFB_FILLRECT
1707         select FB_CFB_COPYAREA
1708         select FB_CFB_IMAGEBLIT
1709         help
1710           Support for the onboard framebuffer (1024x768x8) in the Personal
1711           DECstation series (Personal DECstation 5000/20, /25, /33, /50,
1712           Codename "Maxine").
1713
1714 config FB_G364
1715         bool "G364 frame buffer support"
1716         depends on (FB = y) && (MIPS_MAGNUM_4000 || OLIVETTI_M700)
1717         select FB_CFB_FILLRECT
1718         select FB_CFB_COPYAREA
1719         select FB_CFB_IMAGEBLIT
1720         help
1721           The G364 driver is the framebuffer used in MIPS Magnum 4000 and
1722           Olivetti M700-10 systems.
1723
1724 config FB_68328
1725         bool "Motorola 68328 native frame buffer support"
1726         depends on (FB = y) && (M68328 || M68EZ328 || M68VZ328)
1727         select FB_CFB_FILLRECT
1728         select FB_CFB_COPYAREA
1729         select FB_CFB_IMAGEBLIT
1730         help
1731           Say Y here if you want to support the built-in frame buffer of
1732           the Motorola 68328 CPU family.
1733
1734 config FB_PXA168
1735         tristate "PXA168/910 LCD framebuffer support"
1736         depends on FB && HAVE_CLK && HAS_IOMEM
1737         depends on CPU_PXA168 || CPU_PXA910 || COMPILE_TEST
1738         select FB_CFB_FILLRECT
1739         select FB_CFB_COPYAREA
1740         select FB_CFB_IMAGEBLIT
1741         ---help---
1742           Frame buffer driver for the built-in LCD controller in the Marvell
1743           MMP processor.
1744
1745 config FB_PXA
1746         tristate "PXA LCD framebuffer support"
1747         depends on FB && ARCH_PXA
1748         select FB_CFB_FILLRECT
1749         select FB_CFB_COPYAREA
1750         select FB_CFB_IMAGEBLIT
1751         select VIDEOMODE_HELPERS if OF
1752         select FB_MODE_HELPERS if OF
1753         ---help---
1754           Frame buffer driver for the built-in LCD controller in the Intel
1755           PXA2x0 processor.
1756
1757           This driver is also available as a module ( = code which can be
1758           inserted and removed from the running kernel whenever you want). The
1759           module will be called pxafb. If you want to compile it as a module,
1760           say M here and read <file:Documentation/kbuild/modules.txt>.
1761
1762           If unsure, say N.
1763
1764 config FB_PXA_OVERLAY
1765         bool "Support PXA27x/PXA3xx Overlay(s) as framebuffer"
1766         depends on FB_PXA && (PXA27x || PXA3xx)
1767
1768 config FB_PXA_SMARTPANEL
1769         bool "PXA Smartpanel LCD support"
1770         depends on FB_PXA
1771
1772 config FB_PXA_PARAMETERS
1773         bool "PXA LCD command line parameters"
1774         depends on FB_PXA
1775         ---help---
1776           Enable the use of kernel command line or module parameters
1777           to configure the physical properties of the LCD panel when
1778           using the PXA LCD driver.
1779
1780           This option allows you to override the panel parameters
1781           supplied by the platform in order to support multiple
1782           different models of flatpanel. If you will only be using a
1783           single model of flatpanel then you can safely leave this
1784           option disabled.
1785
1786           <file:Documentation/fb/pxafb.txt> describes the available parameters.
1787
1788 config PXA3XX_GCU
1789         tristate "PXA3xx 2D graphics accelerator driver"
1790         depends on FB_PXA
1791         help
1792           Kernelspace driver for the 2D graphics controller unit (GCU)
1793           found on PXA3xx processors. There is a counterpart driver in the
1794           DirectFB suite, see http://www.directfb.org/
1795
1796           If you compile this as a module, it will be called pxa3xx_gcu.
1797
1798 config FB_MBX
1799         tristate "2700G LCD framebuffer support"
1800         depends on FB && ARCH_PXA
1801         select FB_CFB_FILLRECT
1802         select FB_CFB_COPYAREA
1803         select FB_CFB_IMAGEBLIT
1804         ---help---
1805           Framebuffer driver for the Intel 2700G (Marathon) Graphics
1806           Accelerator
1807
1808 config FB_MBX_DEBUG
1809         bool "Enable debugging info via debugfs"
1810         depends on FB_MBX && DEBUG_FS
1811         ---help---
1812           Enable this if you want debugging information using the debug
1813           filesystem (debugfs)
1814
1815           If unsure, say N.
1816
1817 config FB_FSL_DIU
1818         tristate "Freescale DIU framebuffer support"
1819         depends on FB && FSL_SOC
1820         select FB_MODE_HELPERS
1821         select FB_CFB_FILLRECT
1822         select FB_CFB_COPYAREA
1823         select FB_CFB_IMAGEBLIT
1824         select PPC_LIB_RHEAP
1825         ---help---
1826           Framebuffer driver for the Freescale SoC DIU
1827
1828 config FB_W100
1829         tristate "W100 frame buffer support"
1830         depends on FB && ARCH_PXA
1831         select FB_CFB_FILLRECT
1832         select FB_CFB_COPYAREA
1833         select FB_CFB_IMAGEBLIT
1834         ---help---
1835           Frame buffer driver for the w100 as found on the Sharp SL-Cxx series.
1836           It can also drive the w3220 chip found on iPAQ hx4700.
1837
1838           This driver is also available as a module ( = code which can be
1839           inserted and removed from the running kernel whenever you want). The
1840           module will be called w100fb. If you want to compile it as a module,
1841           say M here and read <file:Documentation/kbuild/modules.txt>.
1842
1843           If unsure, say N.
1844
1845 config FB_SH_MOBILE_LCDC
1846         tristate "SuperH Mobile LCDC framebuffer support"
1847         depends on FB && (SUPERH || ARCH_RENESAS) && HAVE_CLK
1848         select FB_SYS_FILLRECT
1849         select FB_SYS_COPYAREA
1850         select FB_SYS_IMAGEBLIT
1851         select FB_SYS_FOPS
1852         select FB_DEFERRED_IO
1853         select FB_BACKLIGHT
1854         ---help---
1855           Frame buffer driver for the on-chip SH-Mobile LCD controller.
1856
1857 config FB_TMIO
1858         tristate "Toshiba Mobile IO FrameBuffer support"
1859         depends on FB && (MFD_TMIO || COMPILE_TEST)
1860         select FB_CFB_FILLRECT
1861         select FB_CFB_COPYAREA
1862         select FB_CFB_IMAGEBLIT
1863         ---help---
1864           Frame buffer driver for the Toshiba Mobile IO integrated as found
1865           on the Sharp SL-6000 series
1866
1867           This driver is also available as a module ( = code which can be
1868           inserted and removed from the running kernel whenever you want). The
1869           module will be called tmiofb. If you want to compile it as a module,
1870           say M here and read <file:Documentation/kbuild/modules.txt>.
1871
1872           If unsure, say N.
1873
1874 config FB_TMIO_ACCELL
1875         bool "tmiofb acceleration"
1876         depends on FB_TMIO
1877         default y
1878
1879 config FB_S3C
1880         tristate "Samsung S3C framebuffer support"
1881         depends on FB && (CPU_S3C2416 || ARCH_S3C64XX)
1882         select FB_CFB_FILLRECT
1883         select FB_CFB_COPYAREA
1884         select FB_CFB_IMAGEBLIT
1885         ---help---
1886           Frame buffer driver for the built-in FB controller in the Samsung
1887           SoC line from the S3C2443 onwards, including the S3C2416, S3C2450,
1888           and the S3C64XX series such as the S3C6400 and S3C6410.
1889
1890           These chips all have the same basic framebuffer design with the
1891           actual capabilities depending on the chip. For instance the S3C6400
1892           and S3C6410 support 4 hardware windows whereas the S3C24XX series
1893           currently only have two.
1894
1895           Currently the support is only for the S3C6400 and S3C6410 SoCs.
1896
1897 config FB_S3C_DEBUG_REGWRITE
1898         bool "Debug register writes"
1899         depends on FB_S3C
1900         ---help---
1901           Show all register writes via pr_debug()
1902
1903 config FB_S3C2410
1904         tristate "S3C2410 LCD framebuffer support"
1905         depends on FB && ARCH_S3C24XX
1906         select FB_CFB_FILLRECT
1907         select FB_CFB_COPYAREA
1908         select FB_CFB_IMAGEBLIT
1909         ---help---
1910           Frame buffer driver for the built-in LCD controller in the Samsung
1911           S3C2410 processor.
1912
1913           This driver is also available as a module ( = code which can be
1914           inserted and removed from the running kernel whenever you want). The
1915           module will be called s3c2410fb. If you want to compile it as a module,
1916           say M here and read <file:Documentation/kbuild/modules.txt>.
1917
1918           If unsure, say N.
1919 config FB_S3C2410_DEBUG
1920         bool "S3C2410 lcd debug messages"
1921         depends on FB_S3C2410
1922         help
1923           Turn on debugging messages. Note that you can set/unset at run time
1924           through sysfs
1925
1926 config FB_NUC900
1927         tristate "NUC900 LCD framebuffer support"
1928         depends on FB && ARCH_W90X900
1929         select FB_CFB_FILLRECT
1930         select FB_CFB_COPYAREA
1931         select FB_CFB_IMAGEBLIT
1932         ---help---
1933           Frame buffer driver for the built-in LCD controller in the Nuvoton
1934           NUC900 processor
1935
1936 config GPM1040A0_320X240
1937         bool "Giantplus Technology GPM1040A0 320x240 Color TFT LCD"
1938         depends on FB_NUC900
1939
1940 config FB_SM501
1941         tristate "Silicon Motion SM501 framebuffer support"
1942         depends on FB && MFD_SM501
1943         select FB_CFB_FILLRECT
1944         select FB_CFB_COPYAREA
1945         select FB_CFB_IMAGEBLIT
1946         ---help---
1947           Frame buffer driver for the CRT and LCD controllers in the Silicon
1948           Motion SM501.
1949
1950           This driver is also available as a module ( = code which can be
1951           inserted and removed from the running kernel whenever you want). The
1952           module will be called sm501fb. If you want to compile it as a module,
1953           say M here and read <file:Documentation/kbuild/modules.txt>.
1954
1955           If unsure, say N.
1956
1957 config FB_SMSCUFX
1958         tristate "SMSC UFX6000/7000 USB Framebuffer support"
1959         depends on FB && USB
1960         select FB_MODE_HELPERS
1961         select FB_SYS_FILLRECT
1962         select FB_SYS_COPYAREA
1963         select FB_SYS_IMAGEBLIT
1964         select FB_SYS_FOPS
1965         select FB_DEFERRED_IO
1966         ---help---
1967           This is a kernel framebuffer driver for SMSC UFX USB devices.
1968           Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and
1969           mplayer -vo fbdev. Supports both UFX6000 (USB 2.0) and UFX7000
1970           (USB 3.0) devices.
1971           To compile as a module, choose M here: the module name is smscufx.
1972
1973 config FB_UDL
1974         tristate "Displaylink USB Framebuffer support"
1975         depends on FB && USB
1976         select FB_MODE_HELPERS
1977         select FB_SYS_FILLRECT
1978         select FB_SYS_COPYAREA
1979         select FB_SYS_IMAGEBLIT
1980         select FB_SYS_FOPS
1981         select FB_DEFERRED_IO
1982         ---help---
1983           This is a kernel framebuffer driver for DisplayLink USB devices.
1984           Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and
1985           mplayer -vo fbdev. Supports all USB 2.0 era DisplayLink devices.
1986           To compile as a module, choose M here: the module name is udlfb.
1987
1988 config FB_IBM_GXT4500
1989         tristate "Framebuffer support for IBM GXT4000P/4500P/6000P/6500P adaptors"
1990         depends on FB
1991         select FB_CFB_FILLRECT
1992         select FB_CFB_COPYAREA
1993         select FB_CFB_IMAGEBLIT
1994         ---help---
1995           Say Y here to enable support for the IBM GXT4000P/6000P and
1996           GXT4500P/6500P display adaptor based on Raster Engine RC1000,
1997           found on some IBM System P (pSeries) machines. This driver
1998           doesn't use Geometry Engine GT1000. This driver also supports
1999           AGP Fire GL2/3/4 cards on x86.
2000
2001 config FB_PS3
2002         tristate "PS3 GPU framebuffer driver"
2003         depends on FB && PS3_PS3AV
2004         select FB_SYS_FILLRECT
2005         select FB_SYS_COPYAREA
2006         select FB_SYS_IMAGEBLIT
2007         select FB_SYS_FOPS
2008         ---help---
2009           Include support for the virtual frame buffer in the PS3 platform.
2010
2011 config FB_PS3_DEFAULT_SIZE_M
2012         int "PS3 default frame buffer size (in MiB)"
2013         depends on FB_PS3
2014         default 9
2015         ---help---
2016           This is the default size (in MiB) of the virtual frame buffer in
2017           the PS3.
2018           The default value can be overridden on the kernel command line
2019           using the "ps3fb" option (e.g. "ps3fb=9M");
2020
2021 config FB_XILINX
2022         tristate "Xilinx frame buffer support"
2023         depends on FB && (XILINX_VIRTEX || MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
2024         select FB_CFB_FILLRECT
2025         select FB_CFB_COPYAREA
2026         select FB_CFB_IMAGEBLIT
2027         ---help---
2028           Include support for the Xilinx ML300/ML403 reference design
2029           framebuffer. ML300 carries a 640*480 LCD display on the board,
2030           ML403 uses a standard DB15 VGA connector.
2031
2032 config FB_GOLDFISH
2033         tristate "Goldfish Framebuffer"
2034         depends on FB
2035         depends on GOLDFISH || COMPILE_TEST
2036         select FB_CFB_FILLRECT
2037         select FB_CFB_COPYAREA
2038         select FB_CFB_IMAGEBLIT
2039         ---help---
2040           Framebuffer driver for Goldfish Virtual Platform
2041
2042 config FB_COBALT
2043         tristate "Cobalt server LCD frame buffer support"
2044         depends on FB && MIPS_COBALT
2045
2046 config FB_SH7760
2047         bool "SH7760/SH7763/SH7720/SH7721 LCDC support"
2048         depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \
2049                 || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721)
2050         select FB_CFB_FILLRECT
2051         select FB_CFB_COPYAREA
2052         select FB_CFB_IMAGEBLIT
2053         ---help---
2054           Support for the SH7760/SH7763/SH7720/SH7721 integrated
2055           (D)STN/TFT LCD Controller.
2056           Supports display resolutions up to 1024x1024 pixel, grayscale and
2057           color operation, with depths ranging from 1 bpp to 8 bpp monochrome
2058           and 8, 15 or 16 bpp color; 90 degrees clockwise display rotation for
2059           panels <= 320 pixel horizontal resolution.
2060
2061 config FB_DA8XX
2062         tristate "DA8xx/OMAP-L1xx/AM335x Framebuffer support"
2063         depends on FB && HAVE_CLK && HAS_IOMEM
2064         depends on ARCH_DAVINCI_DA8XX || SOC_AM33XX || COMPILE_TEST
2065         select FB_CFB_FILLRECT
2066         select FB_CFB_COPYAREA
2067         select FB_CFB_IMAGEBLIT
2068         select FB_CFB_REV_PIXELS_IN_BYTE
2069         select FB_MODE_HELPERS
2070         select VIDEOMODE_HELPERS
2071         ---help---
2072           This is the frame buffer device driver for the TI LCD controller
2073           found on DA8xx/OMAP-L1xx/AM335x SoCs.
2074           If unsure, say N.
2075
2076 config FB_VIRTUAL
2077         tristate "Virtual Frame Buffer support (ONLY FOR TESTING!)"
2078         depends on FB
2079         select FB_SYS_FILLRECT
2080         select FB_SYS_COPYAREA
2081         select FB_SYS_IMAGEBLIT
2082         select FB_SYS_FOPS
2083         ---help---
2084           This is a `virtual' frame buffer device. It operates on a chunk of
2085           unswappable kernel memory instead of on the memory of a graphics
2086           board. This means you cannot see any output sent to this frame
2087           buffer device, while it does consume precious memory. The main use
2088           of this frame buffer device is testing and debugging the frame
2089           buffer subsystem. Do NOT enable it for normal systems! To protect
2090           the innocent, it has to be enabled explicitly at boot time using the
2091           kernel option `video=vfb:'.
2092
2093           To compile this driver as a module, choose M here: the
2094           module will be called vfb. In order to load it, you must use
2095           the vfb_enable=1 option.
2096
2097           If unsure, say N.
2098
2099 config XEN_FBDEV_FRONTEND
2100         tristate "Xen virtual frame buffer support"
2101         depends on FB && XEN
2102         select FB_SYS_FILLRECT
2103         select FB_SYS_COPYAREA
2104         select FB_SYS_IMAGEBLIT
2105         select FB_SYS_FOPS
2106         select FB_DEFERRED_IO
2107         select XEN_XENBUS_FRONTEND
2108         default y
2109         help
2110           This driver implements the front-end of the Xen virtual
2111           frame buffer driver.  It communicates with a back-end
2112           in another domain.
2113
2114 config FB_METRONOME
2115         tristate "E-Ink Metronome/8track controller support"
2116         depends on FB
2117         select FB_SYS_FILLRECT
2118         select FB_SYS_COPYAREA
2119         select FB_SYS_IMAGEBLIT
2120         select FB_SYS_FOPS
2121         select FB_DEFERRED_IO
2122         help
2123           This driver implements support for the E-Ink Metronome
2124           controller. The pre-release name for this device was 8track
2125           and could also have been called by some vendors as PVI-nnnn.
2126
2127 config FB_MB862XX
2128         tristate "Fujitsu MB862xx GDC support"
2129         depends on FB
2130         depends on PCI || (OF && PPC)
2131         select FB_CFB_FILLRECT
2132         select FB_CFB_COPYAREA
2133         select FB_CFB_IMAGEBLIT
2134         ---help---
2135           Frame buffer driver for Fujitsu Carmine/Coral-P(A)/Lime controllers.
2136
2137 choice
2138         prompt "GDC variant"
2139         depends on FB_MB862XX
2140
2141 config FB_MB862XX_PCI_GDC
2142         bool "Carmine/Coral-P(A) GDC"
2143         depends on PCI
2144         ---help---
2145           This enables framebuffer support for Fujitsu Carmine/Coral-P(A)
2146           PCI graphics controller devices.
2147
2148 config FB_MB862XX_LIME
2149         bool "Lime GDC"
2150         depends on OF && PPC
2151         select FB_FOREIGN_ENDIAN
2152         select FB_LITTLE_ENDIAN
2153         ---help---
2154           Framebuffer support for Fujitsu Lime GDC on host CPU bus.
2155
2156 endchoice
2157
2158 config FB_MB862XX_I2C
2159         bool "Support I2C bus on MB862XX GDC"
2160         depends on FB_MB862XX && I2C
2161         depends on FB_MB862XX=m || I2C=y
2162         default y
2163         help
2164           Selecting this option adds Coral-P(A)/Lime GDC I2C bus adapter
2165           driver to support accessing I2C devices on controller's I2C bus.
2166           These are usually some video decoder chips.
2167
2168 config FB_EP93XX
2169         tristate "EP93XX frame buffer support"
2170         depends on FB && ARCH_EP93XX
2171         select FB_CFB_FILLRECT
2172         select FB_CFB_COPYAREA
2173         select FB_CFB_IMAGEBLIT
2174         ---help---
2175           Framebuffer driver for the Cirrus Logic EP93XX series of processors.
2176           This driver is also available as a module. The module will be called
2177           ep93xx-fb.
2178
2179 config FB_PRE_INIT_FB
2180         bool "Don't reinitialize, use bootloader's GDC/Display configuration"
2181         depends on FB && FB_MB862XX_LIME
2182         ---help---
2183           Select this option if display contents should be inherited as set by
2184           the bootloader.
2185
2186 config FB_MX3
2187         tristate "MX3 Framebuffer support"
2188         depends on FB && MX3_IPU
2189         select BACKLIGHT_CLASS_DEVICE
2190         select FB_CFB_FILLRECT
2191         select FB_CFB_COPYAREA
2192         select FB_CFB_IMAGEBLIT
2193         default y
2194         help
2195           This is a framebuffer device for the i.MX31 LCD Controller. So
2196           far only synchronous displays are supported. If you plan to use
2197           an LCD display with your i.MX31 system, say Y here.
2198
2199 config FB_BROADSHEET
2200         tristate "E-Ink Broadsheet/Epson S1D13521 controller support"
2201         depends on FB && (ARCH_PXA || COMPILE_TEST)
2202         select FB_SYS_FILLRECT
2203         select FB_SYS_COPYAREA
2204         select FB_SYS_IMAGEBLIT
2205         select FB_SYS_FOPS
2206         select FB_DEFERRED_IO
2207         help
2208           This driver implements support for the E-Ink Broadsheet
2209           controller. The release name for this device was Epson S1D13521
2210           and could also have been called by other names when coupled with
2211           a bridge adapter.
2212
2213 config FB_JZ4740
2214         tristate "JZ4740 LCD framebuffer support"
2215         depends on FB && MACH_JZ4740
2216         select FB_SYS_FILLRECT
2217         select FB_SYS_COPYAREA
2218         select FB_SYS_IMAGEBLIT
2219         help
2220           Framebuffer support for the JZ4740 SoC.
2221
2222 config FB_PUV3_UNIGFX
2223         tristate "PKUnity v3 Unigfx framebuffer support"
2224         depends on FB && UNICORE32 && ARCH_PUV3
2225         select FB_SYS_FILLRECT
2226         select FB_SYS_COPYAREA
2227         select FB_SYS_IMAGEBLIT
2228         select FB_SYS_FOPS
2229         help
2230           Choose this option if you want to use the Unigfx device as a
2231           framebuffer device. Without the support of PCI & AGP.
2232
2233 config FB_HYPERV
2234         tristate "Microsoft Hyper-V Synthetic Video support"
2235         depends on FB && HYPERV
2236         select FB_CFB_FILLRECT
2237         select FB_CFB_COPYAREA
2238         select FB_CFB_IMAGEBLIT
2239         help
2240           This framebuffer driver supports Microsoft Hyper-V Synthetic Video.
2241
2242 config FB_SIMPLE
2243         bool "Simple framebuffer support"
2244         depends on (FB = y)
2245         select FB_CFB_FILLRECT
2246         select FB_CFB_COPYAREA
2247         select FB_CFB_IMAGEBLIT
2248         help
2249           Say Y if you want support for a simple frame-buffer.
2250
2251           This driver assumes that the display hardware has been initialized
2252           before the kernel boots, and the kernel will simply render to the
2253           pre-allocated frame buffer surface.
2254
2255           Configuration re: surface address, size, and format must be provided
2256           through device tree, or plain old platform data.
2257
2258 config FB_SSD1307
2259         tristate "Solomon SSD1307 framebuffer support"
2260         depends on FB && I2C
2261         depends on OF
2262         depends on GPIOLIB || COMPILE_TEST
2263         select FB_SYS_FOPS
2264         select FB_SYS_FILLRECT
2265         select FB_SYS_COPYAREA
2266         select FB_SYS_IMAGEBLIT
2267         select FB_DEFERRED_IO
2268         select PWM
2269         select FB_BACKLIGHT
2270         help
2271           This driver implements support for the Solomon SSD1307
2272           OLED controller over I2C.
2273
2274 config FB_SM712
2275         tristate "Silicon Motion SM712 framebuffer support"
2276         depends on FB && PCI
2277         select FB_CFB_FILLRECT
2278         select FB_CFB_COPYAREA
2279         select FB_CFB_IMAGEBLIT
2280         help
2281           Frame buffer driver for the Silicon Motion SM710, SM712, SM721
2282           and SM722 chips.
2283
2284           This driver is also available as a module. The module will be
2285           called sm712fb. If you want to compile it as a module, say M
2286           here and read <file:Documentation/kbuild/modules.txt>.
2287
2288 source "drivers/video/fbdev/omap/Kconfig"
2289 source "drivers/video/fbdev/omap2/Kconfig"
2290 source "drivers/video/fbdev/mmp/Kconfig"