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