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