projects/linux·blob master · refs

1805 lines · 55.5 KiB

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