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