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