0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # fbdev configuration
0004 #
0005
0006 config FB_CMDLINE
0007 bool
0008
0009 config FB_NOTIFY
0010 bool
0011
0012 menuconfig FB
0013 tristate "Support for frame buffer devices"
0014 select FB_CMDLINE
0015 select FB_NOTIFY
0016 help
0017 The frame buffer device provides an abstraction for the graphics
0018 hardware. It represents the frame buffer of some video hardware and
0019 allows application software to access the graphics hardware through
0020 a well-defined interface, so the software doesn't need to know
0021 anything about the low-level (hardware register) stuff.
0022
0023 Frame buffer devices work identically across the different
0024 architectures supported by Linux and make the implementation of
0025 application programs easier and more portable; at this point, an X
0026 server exists which uses the frame buffer device exclusively.
0027 On several non-X86 architectures, the frame buffer device is the
0028 only way to use the graphics hardware.
0029
0030 The device is accessed through special device nodes, usually located
0031 in the /dev directory, i.e. /dev/fb*.
0032
0033 You need an utility program called fbset to make full use of frame
0034 buffer devices. Please read <file:Documentation/fb/framebuffer.rst>
0035 and the Framebuffer-HOWTO at
0036 <http://www.munted.org.uk/programming/Framebuffer-HOWTO-1.3.html> for more
0037 information.
0038
0039 Say Y here and to the driver for your graphics board below if you
0040 are compiling a kernel for a non-x86 architecture.
0041
0042 If you are compiling for the x86 architecture, you can say Y if you
0043 want to play with it, but it is not essential. Please note that
0044 running graphical applications that directly touch the hardware
0045 (e.g. an accelerated X server) and that are not frame buffer
0046 device-aware may cause unexpected results. If unsure, say N.
0047
0048 config FIRMWARE_EDID
0049 bool "Enable firmware EDID"
0050 depends on FB
0051 help
0052 This enables access to the EDID transferred from the firmware.
0053 On the i386, this is from the Video BIOS. Enable this if DDC/I2C
0054 transfers do not work for your driver and if you are using
0055 nvidiafb, i810fb or savagefb.
0056
0057 In general, choosing Y for this option is safe. If you
0058 experience extremely long delays while booting before you get
0059 something on your display, try setting this to N. Matrox cards in
0060 combination with certain motherboards and monitors are known to
0061 suffer from this problem.
0062
0063 config FB_DDC
0064 tristate
0065 depends on FB
0066 select I2C_ALGOBIT
0067 select I2C
0068
0069 config FB_CFB_FILLRECT
0070 tristate
0071 depends on FB
0072 help
0073 Include the cfb_fillrect function for generic software rectangle
0074 filling. This is used by drivers that don't provide their own
0075 (accelerated) version.
0076
0077 config FB_CFB_COPYAREA
0078 tristate
0079 depends on FB
0080 help
0081 Include the cfb_copyarea function for generic software area copying.
0082 This is used by drivers that don't provide their own (accelerated)
0083 version.
0084
0085 config FB_CFB_IMAGEBLIT
0086 tristate
0087 depends on FB
0088 help
0089 Include the cfb_imageblit function for generic software image
0090 blitting. This is used by drivers that don't provide their own
0091 (accelerated) version.
0092
0093 config FB_CFB_REV_PIXELS_IN_BYTE
0094 bool
0095 depends on FB
0096 help
0097 Allow generic frame-buffer functions to work on displays with 1, 2
0098 and 4 bits per pixel depths which has opposite order of pixels in
0099 byte order to bytes in long order.
0100
0101 config FB_SYS_FILLRECT
0102 tristate
0103 depends on FB
0104 help
0105 Include the sys_fillrect function for generic software rectangle
0106 filling. This is used by drivers that don't provide their own
0107 (accelerated) version and the framebuffer is in system RAM.
0108
0109 config FB_SYS_COPYAREA
0110 tristate
0111 depends on FB
0112 help
0113 Include the sys_copyarea function for generic software area copying.
0114 This is used by drivers that don't provide their own (accelerated)
0115 version and the framebuffer is in system RAM.
0116
0117 config FB_SYS_IMAGEBLIT
0118 tristate
0119 depends on FB
0120 help
0121 Include the sys_imageblit function for generic software image
0122 blitting. This is used by drivers that don't provide their own
0123 (accelerated) version and the framebuffer is in system RAM.
0124
0125 config FB_PROVIDE_GET_FB_UNMAPPED_AREA
0126 bool
0127 depends on FB
0128 help
0129 Allow generic frame-buffer to provide get_fb_unmapped_area
0130 function.
0131
0132 menuconfig FB_FOREIGN_ENDIAN
0133 bool "Framebuffer foreign endianness support"
0134 depends on FB
0135 help
0136 This menu will let you enable support for the framebuffers with
0137 non-native endianness (e.g. Little-Endian framebuffer on a
0138 Big-Endian machine). Most probably you don't have such hardware,
0139 so it's safe to say "n" here.
0140
0141 choice
0142 prompt "Choice endianness support"
0143 depends on FB_FOREIGN_ENDIAN
0144
0145 config FB_BOTH_ENDIAN
0146 bool "Support for Big- and Little-Endian framebuffers"
0147
0148 config FB_BIG_ENDIAN
0149 bool "Support for Big-Endian framebuffers only"
0150
0151 config FB_LITTLE_ENDIAN
0152 bool "Support for Little-Endian framebuffers only"
0153
0154 endchoice
0155
0156 config FB_SYS_FOPS
0157 tristate
0158 depends on FB
0159
0160 config FB_DEFERRED_IO
0161 bool
0162 depends on FB
0163
0164 config FB_HECUBA
0165 tristate
0166 depends on FB
0167 depends on FB_DEFERRED_IO
0168
0169 config FB_SVGALIB
0170 tristate
0171 depends on FB
0172 help
0173 Common utility functions useful to fbdev drivers of VGA-based
0174 cards.
0175
0176 config FB_MACMODES
0177 tristate
0178 depends on FB
0179
0180 config FB_BACKLIGHT
0181 tristate
0182 depends on FB
0183 select BACKLIGHT_CLASS_DEVICE
0184
0185 config FB_MODE_HELPERS
0186 bool "Enable Video Mode Handling Helpers"
0187 depends on FB
0188 help
0189 This enables functions for handling video modes using the
0190 Generalized Timing Formula and the EDID parser. A few drivers rely
0191 on this feature such as the radeonfb, rivafb, and the i810fb. If
0192 your driver does not take advantage of this feature, choosing Y will
0193 just increase the kernel size by about 5K.
0194
0195 config FB_TILEBLITTING
0196 bool "Enable Tile Blitting Support"
0197 depends on FB
0198 help
0199 This enables tile blitting. Tile blitting is a drawing technique
0200 where the screen is divided into rectangular sections (tiles), whereas
0201 the standard blitting divides the screen into pixels. Because the
0202 default drawing element is a tile, drawing functions will be passed
0203 parameters in terms of number of tiles instead of number of pixels.
0204 For example, to draw a single character, instead of using bitmaps,
0205 an index to an array of bitmaps will be used. To clear or move a
0206 rectangular section of a screen, the rectangle will be described in
0207 terms of number of tiles in the x- and y-axis.
0208
0209 This is particularly important to one driver, matroxfb. If
0210 unsure, say N.
0211
0212 comment "Frame buffer hardware drivers"
0213 depends on FB
0214
0215 config FB_GRVGA
0216 tristate "Aeroflex Gaisler framebuffer support"
0217 depends on FB && SPARC
0218 select FB_CFB_FILLRECT
0219 select FB_CFB_COPYAREA
0220 select FB_CFB_IMAGEBLIT
0221 help
0222 This enables support for the SVGACTRL framebuffer in the GRLIB IP library from Aeroflex Gaisler.
0223
0224 config FB_CIRRUS
0225 tristate "Cirrus Logic support"
0226 depends on FB && (ZORRO || PCI)
0227 select FB_CFB_FILLRECT
0228 select FB_CFB_COPYAREA
0229 select FB_CFB_IMAGEBLIT
0230 help
0231 This enables support for Cirrus Logic GD542x/543x based boards on
0232 Amiga: SD64, Piccolo, Picasso II/II+, Picasso IV, or EGS Spectrum.
0233
0234 If you have a PCI-based system, this enables support for these
0235 chips: GD-543x, GD-544x, GD-5480.
0236
0237 Please read the file <file:Documentation/fb/cirrusfb.rst>.
0238
0239 Say N unless you have such a graphics board or plan to get one
0240 before you next recompile the kernel.
0241
0242 config FB_PM2
0243 tristate "Permedia2 support"
0244 depends on FB && ((AMIGA && BROKEN) || PCI)
0245 select FB_CFB_FILLRECT
0246 select FB_CFB_COPYAREA
0247 select FB_CFB_IMAGEBLIT
0248 help
0249 This is the frame buffer device driver for cards based on
0250 the 3D Labs Permedia, Permedia 2 and Permedia 2V chips.
0251 The driver was tested on the following cards:
0252 Diamond FireGL 1000 PRO AGP
0253 ELSA Gloria Synergy PCI
0254 Appian Jeronimo PRO (both heads) PCI
0255 3DLabs Oxygen ACX aka EONtronics Picasso P2 PCI
0256 Techsource Raptor GFX-8P (aka Sun PGX-32) on SPARC
0257 ASK Graphic Blaster Exxtreme AGP
0258
0259 To compile this driver as a module, choose M here: the
0260 module will be called pm2fb.
0261
0262 config FB_PM2_FIFO_DISCONNECT
0263 bool "enable FIFO disconnect feature"
0264 depends on FB_PM2 && PCI
0265 help
0266 Support the Permedia2 FIFO disconnect feature.
0267
0268 config FB_ARMCLCD
0269 tristate "ARM PrimeCell PL110 support"
0270 depends on ARM || ARM64 || COMPILE_TEST
0271 depends on FB && ARM_AMBA && HAS_IOMEM
0272 select FB_CFB_FILLRECT
0273 select FB_CFB_COPYAREA
0274 select FB_CFB_IMAGEBLIT
0275 select FB_MODE_HELPERS if OF
0276 select VIDEOMODE_HELPERS if OF
0277 select BACKLIGHT_CLASS_DEVICE if OF
0278 help
0279 This framebuffer device driver is for the ARM PrimeCell PL110
0280 Colour LCD controller. ARM PrimeCells provide the building
0281 blocks for System on a Chip devices.
0282
0283 If you want to compile this as a module (=code which can be
0284 inserted into and removed from the running kernel), say M
0285 here and read <file:Documentation/kbuild/modules.rst>. The module
0286 will be called amba-clcd.
0287
0288 config FB_ACORN
0289 bool "Acorn VIDC support"
0290 depends on (FB = y) && ARM && ARCH_ACORN
0291 select FB_CFB_FILLRECT
0292 select FB_CFB_COPYAREA
0293 select FB_CFB_IMAGEBLIT
0294 help
0295 This is the frame buffer device driver for the Acorn VIDC graphics
0296 hardware found in Acorn RISC PCs and other ARM-based machines. If
0297 unsure, say N.
0298
0299 config FB_CLPS711X
0300 tristate "CLPS711X LCD support"
0301 depends on FB && (ARCH_CLPS711X || COMPILE_TEST)
0302 select FB_MODE_HELPERS
0303 select FB_SYS_FILLRECT
0304 select FB_SYS_COPYAREA
0305 select FB_SYS_IMAGEBLIT
0306 select LCD_CLASS_DEVICE
0307 select VIDEOMODE_HELPERS
0308 help
0309 Say Y to enable the Framebuffer driver for the Cirrus Logic
0310 CLPS711X CPUs.
0311
0312 config FB_SA1100
0313 bool "SA-1100 LCD support"
0314 depends on (FB = y) && ARM && ARCH_SA1100
0315 select FB_CFB_FILLRECT
0316 select FB_CFB_COPYAREA
0317 select FB_CFB_IMAGEBLIT
0318 help
0319 This is a framebuffer device for the SA-1100 LCD Controller.
0320 See <http://www.linux-fbdev.org/> for information on framebuffer
0321 devices.
0322
0323 If you plan to use the LCD display with your SA-1100 system, say
0324 Y here.
0325
0326 config FB_IMX
0327 tristate "Freescale i.MX1/21/25/27 LCD support"
0328 depends on FB && HAVE_CLK && HAS_IOMEM
0329 depends on ARCH_MXC || COMPILE_TEST
0330 select LCD_CLASS_DEVICE
0331 select FB_CFB_FILLRECT
0332 select FB_CFB_COPYAREA
0333 select FB_CFB_IMAGEBLIT
0334 select FB_MODE_HELPERS
0335 select VIDEOMODE_HELPERS
0336
0337 config FB_CYBER2000
0338 tristate "CyberPro 2000/2010/5000 support"
0339 depends on FB && PCI && (BROKEN || !SPARC64)
0340 select FB_CFB_FILLRECT
0341 select FB_CFB_COPYAREA
0342 select FB_CFB_IMAGEBLIT
0343 help
0344 This enables support for the Integraphics CyberPro 20x0 and 5000
0345 VGA chips used in the Rebel.com Netwinder and other machines.
0346 Say Y if you have a NetWinder or a graphics card containing this
0347 device, otherwise say N.
0348
0349 config FB_CYBER2000_DDC
0350 bool "DDC for CyberPro support"
0351 depends on FB_CYBER2000
0352 select FB_DDC
0353 default y
0354 help
0355 Say Y here if you want DDC support for your CyberPro graphics
0356 card. This is only I2C bus support, driver does not use EDID.
0357
0358 config FB_CYBER2000_I2C
0359 bool "CyberPro 2000/2010/5000 I2C support"
0360 depends on FB_CYBER2000 && I2C && ARCH_NETWINDER
0361 depends on I2C=y || FB_CYBER2000=m
0362 select I2C_ALGOBIT
0363 help
0364 Enable support for the I2C video decoder interface on the
0365 Integraphics CyberPro 20x0 and 5000 VGA chips. This is used
0366 on the Netwinder machines for the SAA7111 video capture.
0367
0368 config FB_APOLLO
0369 bool
0370 depends on (FB = y) && APOLLO
0371 default y
0372 select FB_CFB_FILLRECT
0373 select FB_CFB_IMAGEBLIT
0374
0375 config FB_Q40
0376 bool
0377 depends on (FB = y) && Q40
0378 default y
0379 select FB_CFB_FILLRECT
0380 select FB_CFB_COPYAREA
0381 select FB_CFB_IMAGEBLIT
0382
0383 config FB_AMIGA
0384 tristate "Amiga native chipset support"
0385 depends on FB && AMIGA
0386 help
0387 This is the frame buffer device driver for the builtin graphics
0388 chipset found in Amigas.
0389
0390 To compile this driver as a module, choose M here: the
0391 module will be called amifb.
0392
0393 config FB_AMIGA_OCS
0394 bool "Amiga OCS chipset support"
0395 depends on FB_AMIGA
0396 help
0397 This enables support for the original Agnus and Denise video chips,
0398 found in the Amiga 1000 and most A500's and A2000's. If you intend
0399 to run Linux on any of these systems, say Y; otherwise say N.
0400
0401 config FB_AMIGA_ECS
0402 bool "Amiga ECS chipset support"
0403 depends on FB_AMIGA
0404 help
0405 This enables support for the Enhanced Chip Set, found in later
0406 A500's, later A2000's, the A600, the A3000, the A3000T and CDTV. If
0407 you intend to run Linux on any of these systems, say Y; otherwise
0408 say N.
0409
0410 config FB_AMIGA_AGA
0411 bool "Amiga AGA chipset support"
0412 depends on FB_AMIGA
0413 help
0414 This enables support for the Advanced Graphics Architecture (also
0415 known as the AGA or AA) Chip Set, found in the A1200, A4000, A4000T
0416 and CD32. If you intend to run Linux on any of these systems, say Y;
0417 otherwise say N.
0418
0419 config FB_FM2
0420 bool "Amiga FrameMaster II/Rainbow II support"
0421 depends on (FB = y) && ZORRO
0422 select FB_CFB_FILLRECT
0423 select FB_CFB_COPYAREA
0424 select FB_CFB_IMAGEBLIT
0425 help
0426 This is the frame buffer device driver for the Amiga FrameMaster
0427 card from BSC (exhibited 1992 but not shipped as a CBM product).
0428
0429 config FB_ARC
0430 tristate "Arc Monochrome LCD board support"
0431 depends on FB && (X86 || COMPILE_TEST)
0432 select FB_SYS_FILLRECT
0433 select FB_SYS_COPYAREA
0434 select FB_SYS_IMAGEBLIT
0435 select FB_SYS_FOPS
0436 help
0437 This enables support for the Arc Monochrome LCD board. The board
0438 is based on the KS-108 lcd controller and is typically a matrix
0439 of 2*n chips. This driver was tested with a 128x64 panel. This
0440 driver supports it for use with x86 SBCs through a 16 bit GPIO
0441 interface (8 bit data, 8 bit control). If you anticipate using
0442 this driver, say Y or M; otherwise say N. You must specify the
0443 GPIO IO address to be used for setting control and data.
0444
0445 config FB_ATARI
0446 bool "Atari native chipset support"
0447 depends on (FB = y) && ATARI
0448 select FB_CFB_FILLRECT
0449 select FB_CFB_COPYAREA
0450 select FB_CFB_IMAGEBLIT
0451 help
0452 This is the frame buffer device driver for the builtin graphics
0453 chipset found in Ataris.
0454
0455 config FB_OF
0456 bool "Open Firmware frame buffer device support"
0457 depends on (FB = y) && PPC && (!PPC_PSERIES || PCI)
0458 select APERTURE_HELPERS
0459 select FB_CFB_FILLRECT
0460 select FB_CFB_COPYAREA
0461 select FB_CFB_IMAGEBLIT
0462 select FB_MACMODES
0463 help
0464 Say Y if you want support with Open Firmware for your graphics
0465 board.
0466
0467 config FB_CONTROL
0468 bool "Apple \"control\" display support"
0469 depends on (FB = y) && ((PPC_PMAC && PPC32) || COMPILE_TEST)
0470 select FB_CFB_FILLRECT
0471 select FB_CFB_COPYAREA
0472 select FB_CFB_IMAGEBLIT
0473 select FB_MACMODES
0474 help
0475 This driver supports a frame buffer for the graphics adapter in the
0476 Power Macintosh 7300 and others.
0477
0478 config FB_PLATINUM
0479 bool "Apple \"platinum\" display support"
0480 depends on (FB = y) && PPC_PMAC && PPC32
0481 select FB_CFB_FILLRECT
0482 select FB_CFB_COPYAREA
0483 select FB_CFB_IMAGEBLIT
0484 select FB_MACMODES
0485 help
0486 This driver supports a frame buffer for the "platinum" graphics
0487 adapter in some Power Macintoshes.
0488
0489 config FB_VALKYRIE
0490 bool "Apple \"valkyrie\" display support"
0491 depends on (FB = y) && (MAC || (PPC_PMAC && PPC32))
0492 select FB_CFB_FILLRECT
0493 select FB_CFB_COPYAREA
0494 select FB_CFB_IMAGEBLIT
0495 select FB_MACMODES
0496 help
0497 This driver supports a frame buffer for the "valkyrie" graphics
0498 adapter in some Power Macintoshes.
0499
0500 config FB_CT65550
0501 bool "Chips 65550 display support"
0502 depends on (FB = y) && PPC32 && PCI
0503 select FB_CFB_FILLRECT
0504 select FB_CFB_COPYAREA
0505 select FB_CFB_IMAGEBLIT
0506 help
0507 This is the frame buffer device driver for the Chips & Technologies
0508 65550 graphics chip in PowerBooks.
0509
0510 config FB_ASILIANT
0511 bool "Asiliant (Chips) 69000 display support"
0512 depends on (FB = y) && PCI
0513 select FB_CFB_FILLRECT
0514 select FB_CFB_COPYAREA
0515 select FB_CFB_IMAGEBLIT
0516 help
0517 This is the frame buffer device driver for the Asiliant 69030 chipset
0518
0519 config FB_IMSTT
0520 bool "IMS Twin Turbo display support"
0521 depends on (FB = y) && PCI
0522 select FB_CFB_IMAGEBLIT
0523 select FB_MACMODES if PPC_PMAC
0524 help
0525 The IMS Twin Turbo is a PCI-based frame buffer card bundled with
0526 many Macintosh and compatible computers.
0527
0528 config FB_VGA16
0529 tristate "VGA 16-color graphics support"
0530 depends on FB && (X86 || PPC)
0531 select APERTURE_HELPERS
0532 select FB_CFB_FILLRECT
0533 select FB_CFB_COPYAREA
0534 select FB_CFB_IMAGEBLIT
0535 select VGASTATE
0536 select FONT_8x16 if FRAMEBUFFER_CONSOLE
0537 help
0538 This is the frame buffer device driver for VGA 16 color graphic
0539 cards. Say Y if you have such a card.
0540
0541 To compile this driver as a module, choose M here: the
0542 module will be called vga16fb.
0543
0544 config FB_STI
0545 tristate "HP STI frame buffer device support"
0546 depends on FB && PARISC
0547 select FB_CFB_FILLRECT
0548 select FB_CFB_COPYAREA
0549 select FB_CFB_IMAGEBLIT
0550 default y
0551 help
0552 STI refers to the HP "Standard Text Interface" which is a set of
0553 BIOS routines contained in a ROM chip in HP PA-RISC based machines.
0554 Enabling this option will implement the linux framebuffer device
0555 using calls to the STI BIOS routines for initialisation.
0556
0557 If you enable this option, you will get a planar framebuffer device
0558 /dev/fb which will work on the most common HP graphic cards of the
0559 NGLE family, including the artist chips (in the 7xx and Bxxx series),
0560 HCRX, HCRX24, CRX, CRX24 and VisEG series.
0561
0562 It is safe to enable this option, so you should probably say "Y".
0563
0564 config FB_MAC
0565 bool "Generic Macintosh display support"
0566 depends on (FB = y) && MAC
0567 select FB_CFB_FILLRECT
0568 select FB_CFB_COPYAREA
0569 select FB_CFB_IMAGEBLIT
0570 select FB_MACMODES
0571
0572 config FB_HP300
0573 bool
0574 depends on (FB = y) && DIO
0575 select FB_CFB_IMAGEBLIT
0576 default y
0577
0578 config FB_TGA
0579 tristate "TGA/SFB+ framebuffer support"
0580 depends on FB
0581 depends on PCI || TC
0582 depends on ALPHA || TC
0583 select FB_CFB_FILLRECT
0584 select FB_CFB_COPYAREA
0585 select FB_CFB_IMAGEBLIT
0586 select BITREVERSE
0587 help
0588 This is the frame buffer device driver for generic TGA and SFB+
0589 graphic cards. These include DEC ZLXp-E1, -E2 and -E3 PCI cards,
0590 also known as PBXGA-A, -B and -C, and DEC ZLX-E1, -E2 and -E3
0591 TURBOchannel cards, also known as PMAGD-A, -B and -C.
0592
0593 Due to hardware limitations ZLX-E2 and E3 cards are not supported
0594 for DECstation 5000/200 systems. Additionally due to firmware
0595 limitations these cards may cause troubles with booting DECstation
0596 5000/240 and /260 systems, but are fully supported under Linux if
0597 you manage to get it going. ;-)
0598
0599 Say Y if you have one of those.
0600
0601 config FB_UVESA
0602 tristate "Userspace VESA VGA graphics support"
0603 depends on FB && CONNECTOR
0604 select FB_CFB_FILLRECT
0605 select FB_CFB_COPYAREA
0606 select FB_CFB_IMAGEBLIT
0607 select FB_MODE_HELPERS
0608 help
0609 This is the frame buffer driver for generic VBE 2.0 compliant
0610 graphic cards. It can also take advantage of VBE 3.0 features,
0611 such as refresh rate adjustment.
0612
0613 This driver generally provides more features than vesafb but
0614 requires a userspace helper application called 'v86d'. See
0615 <file:Documentation/fb/uvesafb.rst> for more information.
0616
0617 If unsure, say N.
0618
0619 config FB_VESA
0620 bool "VESA VGA graphics support"
0621 depends on (FB = y) && X86
0622 select APERTURE_HELPERS
0623 select FB_CFB_FILLRECT
0624 select FB_CFB_COPYAREA
0625 select FB_CFB_IMAGEBLIT
0626 select SYSFB
0627 help
0628 This is the frame buffer device driver for generic VESA 2.0
0629 compliant graphic cards. The older VESA 1.2 cards are not supported.
0630 You will get a boot time penguin logo at no additional cost. Please
0631 read <file:Documentation/fb/vesafb.rst>. If unsure, say Y.
0632
0633 config FB_EFI
0634 bool "EFI-based Framebuffer Support"
0635 depends on (FB = y) && !IA64 && EFI
0636 select APERTURE_HELPERS
0637 select DRM_PANEL_ORIENTATION_QUIRKS
0638 select FB_CFB_FILLRECT
0639 select FB_CFB_COPYAREA
0640 select FB_CFB_IMAGEBLIT
0641 select SYSFB
0642 help
0643 This is the EFI frame buffer device driver. If the firmware on
0644 your platform is EFI 1.10 or UEFI 2.0, select Y to add support for
0645 using the EFI framebuffer as your console.
0646
0647 config FB_N411
0648 tristate "N411 Apollo/Hecuba devkit support"
0649 depends on FB && X86 && MMU
0650 select FB_SYS_FILLRECT
0651 select FB_SYS_COPYAREA
0652 select FB_SYS_IMAGEBLIT
0653 select FB_SYS_FOPS
0654 select FB_DEFERRED_IO
0655 select FB_HECUBA
0656 help
0657 This enables support for the Apollo display controller in its
0658 Hecuba form using the n411 devkit.
0659
0660 config FB_HGA
0661 tristate "Hercules mono graphics support"
0662 depends on FB && X86
0663 help
0664 Say Y here if you have a Hercules mono graphics card.
0665
0666 To compile this driver as a module, choose M here: the
0667 module will be called hgafb.
0668
0669 As this card technology is at least 25 years old,
0670 most people will answer N here.
0671
0672 config FB_GBE
0673 bool "SGI Graphics Backend frame buffer support"
0674 depends on (FB = y) && HAS_IOMEM
0675 depends on SGI_IP32 || COMPILE_TEST
0676 select FB_CFB_FILLRECT
0677 select FB_CFB_COPYAREA
0678 select FB_CFB_IMAGEBLIT
0679 help
0680 This is the frame buffer device driver for SGI Graphics Backend.
0681 This chip is used in SGI O2 and Visual Workstation 320/540.
0682
0683 config FB_GBE_MEM
0684 int "Video memory size in MB"
0685 depends on FB_GBE
0686 default 4
0687 help
0688 This is the amount of memory reserved for the framebuffer,
0689 which can be any value between 1MB and 8MB.
0690
0691 config FB_SBUS
0692 bool "SBUS and UPA framebuffers"
0693 depends on (FB = y) && SPARC
0694 help
0695 Say Y if you want support for SBUS or UPA based frame buffer device.
0696
0697 config FB_BW2
0698 bool "BWtwo support"
0699 depends on (FB = y) && (SPARC && FB_SBUS)
0700 select FB_CFB_FILLRECT
0701 select FB_CFB_COPYAREA
0702 select FB_CFB_IMAGEBLIT
0703 help
0704 This is the frame buffer device driver for the BWtwo frame buffer.
0705
0706 config FB_CG3
0707 bool "CGthree support"
0708 depends on (FB = y) && (SPARC && FB_SBUS)
0709 select FB_CFB_FILLRECT
0710 select FB_CFB_COPYAREA
0711 select FB_CFB_IMAGEBLIT
0712 help
0713 This is the frame buffer device driver for the CGthree frame buffer.
0714
0715 config FB_CG6
0716 bool "CGsix (GX,TurboGX) support"
0717 depends on (FB = y) && (SPARC && FB_SBUS)
0718 select FB_CFB_COPYAREA
0719 select FB_CFB_IMAGEBLIT
0720 help
0721 This is the frame buffer device driver for the CGsix (GX, TurboGX)
0722 frame buffer.
0723
0724 config FB_FFB
0725 bool "Creator/Creator3D/Elite3D support"
0726 depends on FB_SBUS && SPARC64
0727 select FB_CFB_COPYAREA
0728 select FB_CFB_IMAGEBLIT
0729 help
0730 This is the frame buffer device driver for the Creator, Creator3D,
0731 and Elite3D graphics boards.
0732
0733 config FB_TCX
0734 bool "TCX (SS4/SS5 only) support"
0735 depends on FB_SBUS
0736 select FB_CFB_FILLRECT
0737 select FB_CFB_COPYAREA
0738 select FB_CFB_IMAGEBLIT
0739 help
0740 This is the frame buffer device driver for the TCX 24/8bit frame
0741 buffer.
0742
0743 config FB_CG14
0744 bool "CGfourteen (SX) support"
0745 depends on FB_SBUS
0746 select FB_CFB_FILLRECT
0747 select FB_CFB_COPYAREA
0748 select FB_CFB_IMAGEBLIT
0749 help
0750 This is the frame buffer device driver for the CGfourteen frame
0751 buffer on Desktop SPARCsystems with the SX graphics option.
0752
0753 config FB_P9100
0754 bool "P9100 (Sparcbook 3 only) support"
0755 depends on FB_SBUS
0756 select FB_CFB_FILLRECT
0757 select FB_CFB_COPYAREA
0758 select FB_CFB_IMAGEBLIT
0759 help
0760 This is the frame buffer device driver for the P9100 card
0761 supported on Sparcbook 3 machines.
0762
0763 config FB_LEO
0764 bool "Leo (ZX) support"
0765 depends on FB_SBUS
0766 select FB_CFB_FILLRECT
0767 select FB_CFB_COPYAREA
0768 select FB_CFB_IMAGEBLIT
0769 help
0770 This is the frame buffer device driver for the SBUS-based Sun ZX
0771 (leo) frame buffer cards.
0772
0773 config FB_XVR500
0774 bool "Sun XVR-500 3DLABS Wildcat support"
0775 depends on (FB = y) && PCI && SPARC64
0776 select FB_CFB_FILLRECT
0777 select FB_CFB_COPYAREA
0778 select FB_CFB_IMAGEBLIT
0779 help
0780 This is the framebuffer device for the Sun XVR-500 and similar
0781 graphics cards based upon the 3DLABS Wildcat chipset. The driver
0782 only works on sparc64 systems where the system firmware has
0783 mostly initialized the card already. It is treated as a
0784 completely dumb framebuffer device.
0785
0786 config FB_XVR2500
0787 bool "Sun XVR-2500 3DLABS Wildcat support"
0788 depends on (FB = y) && PCI && SPARC64
0789 select FB_CFB_FILLRECT
0790 select FB_CFB_COPYAREA
0791 select FB_CFB_IMAGEBLIT
0792 help
0793 This is the framebuffer device for the Sun XVR-2500 and similar
0794 graphics cards based upon the 3DLABS Wildcat chipset. The driver
0795 only works on sparc64 systems where the system firmware has
0796 mostly initialized the card already. It is treated as a
0797 completely dumb framebuffer device.
0798
0799 config FB_XVR1000
0800 bool "Sun XVR-1000 support"
0801 depends on (FB = y) && SPARC64
0802 select FB_CFB_FILLRECT
0803 select FB_CFB_COPYAREA
0804 select FB_CFB_IMAGEBLIT
0805 help
0806 This is the framebuffer device for the Sun XVR-1000 and similar
0807 graphics cards. The driver only works on sparc64 systems where
0808 the system firmware has mostly initialized the card already. It
0809 is treated as a completely dumb framebuffer device.
0810
0811 config FB_PVR2
0812 tristate "NEC PowerVR 2 display support"
0813 depends on FB && HAS_IOMEM
0814 depends on SH_DREAMCAST || COMPILE_TEST
0815 select FB_CFB_FILLRECT
0816 select FB_CFB_COPYAREA
0817 select FB_CFB_IMAGEBLIT
0818 help
0819 Say Y here if you have a PowerVR 2 card in your box. If you plan to
0820 run linux on your Dreamcast, you will have to say Y here.
0821 This driver may or may not work on other PowerVR 2 cards, but is
0822 totally untested. Use at your own risk. If unsure, say N.
0823
0824 To compile this driver as a module, choose M here: the
0825 module will be called pvr2fb.
0826
0827 You can pass several parameters to the driver at boot time or at
0828 module load time. The parameters look like "video=pvr2:XXX", where
0829 the meaning of XXX can be found at the end of the main source file
0830 (<file:drivers/video/fbdev/pvr2fb.c>). Please see the file
0831 <file:Documentation/fb/pvr2fb.rst>.
0832
0833 config FB_OPENCORES
0834 tristate "OpenCores VGA/LCD core 2.0 framebuffer support"
0835 depends on FB && HAS_DMA
0836 select FB_CFB_FILLRECT
0837 select FB_CFB_COPYAREA
0838 select FB_CFB_IMAGEBLIT
0839 help
0840 This enables support for the OpenCores VGA/LCD core.
0841
0842 The OpenCores VGA/LCD core is typically used together with
0843 softcore CPUs (e.g. OpenRISC or Microblaze) or hard processor
0844 systems (e.g. Altera socfpga or Xilinx Zynq) on FPGAs.
0845
0846 The source code and specification for the core is available at
0847 <https://opencores.org/project,vga_lcd>
0848
0849 config FB_S1D13XXX
0850 tristate "Epson S1D13XXX framebuffer support"
0851 depends on FB
0852 select FB_CFB_FILLRECT
0853 select FB_CFB_COPYAREA
0854 select FB_CFB_IMAGEBLIT
0855 help
0856 Support for S1D13XXX framebuffer device family (currently only
0857 working with S1D13806). Product specs at
0858 <https://vdc.epson.com/>
0859
0860 config FB_ATMEL
0861 tristate "AT91 LCD Controller support"
0862 depends on FB && OF && HAVE_CLK && HAS_IOMEM
0863 depends on HAVE_FB_ATMEL || COMPILE_TEST
0864 select FB_BACKLIGHT
0865 select FB_CFB_FILLRECT
0866 select FB_CFB_COPYAREA
0867 select FB_CFB_IMAGEBLIT
0868 select FB_MODE_HELPERS
0869 select VIDEOMODE_HELPERS
0870 help
0871 This enables support for the AT91 LCD Controller.
0872
0873 config FB_NVIDIA
0874 tristate "nVidia Framebuffer Support"
0875 depends on FB && PCI
0876 select FB_BACKLIGHT if FB_NVIDIA_BACKLIGHT
0877 select FB_MODE_HELPERS
0878 select FB_CFB_FILLRECT
0879 select FB_CFB_COPYAREA
0880 select FB_CFB_IMAGEBLIT
0881 select BITREVERSE
0882 select VGASTATE
0883 help
0884 This driver supports graphics boards with the nVidia chips, TNT
0885 and newer. For very old chipsets, such as the RIVA128, then use
0886 the rivafb.
0887 Say Y if you have such a graphics board.
0888
0889 To compile this driver as a module, choose M here: the
0890 module will be called nvidiafb.
0891
0892 config FB_NVIDIA_I2C
0893 bool "Enable DDC Support"
0894 depends on FB_NVIDIA
0895 select FB_DDC
0896 help
0897 This enables I2C support for nVidia Chipsets. This is used
0898 only for getting EDID information from the attached display
0899 allowing for robust video mode handling and switching.
0900
0901 Because fbdev-2.6 requires that drivers must be able to
0902 independently validate video mode parameters, you should say Y
0903 here.
0904
0905 config FB_NVIDIA_DEBUG
0906 bool "Lots of debug output"
0907 depends on FB_NVIDIA
0908 help
0909 Say Y here if you want the nVidia driver to output all sorts
0910 of debugging information to provide to the maintainer when
0911 something goes wrong.
0912
0913 config FB_NVIDIA_BACKLIGHT
0914 bool "Support for backlight control"
0915 depends on FB_NVIDIA
0916 default y
0917 help
0918 Say Y here if you want to control the backlight of your display.
0919
0920 config FB_RIVA
0921 tristate "nVidia Riva support"
0922 depends on FB && PCI
0923 select FB_BACKLIGHT if FB_RIVA_BACKLIGHT
0924 select FB_MODE_HELPERS
0925 select FB_CFB_FILLRECT
0926 select FB_CFB_COPYAREA
0927 select FB_CFB_IMAGEBLIT
0928 select BITREVERSE
0929 select VGASTATE
0930 help
0931 This driver supports graphics boards with the nVidia Riva/Geforce
0932 chips.
0933 Say Y if you have such a graphics board.
0934
0935 To compile this driver as a module, choose M here: the
0936 module will be called rivafb.
0937
0938 config FB_RIVA_I2C
0939 bool "Enable DDC Support"
0940 depends on FB_RIVA
0941 select FB_DDC
0942 help
0943 This enables I2C support for nVidia Chipsets. This is used
0944 only for getting EDID information from the attached display
0945 allowing for robust video mode handling and switching.
0946
0947 Because fbdev-2.6 requires that drivers must be able to
0948 independently validate video mode parameters, you should say Y
0949 here.
0950
0951 config FB_RIVA_DEBUG
0952 bool "Lots of debug output"
0953 depends on FB_RIVA
0954 help
0955 Say Y here if you want the Riva driver to output all sorts
0956 of debugging information to provide to the maintainer when
0957 something goes wrong.
0958
0959 config FB_RIVA_BACKLIGHT
0960 bool "Support for backlight control"
0961 depends on FB_RIVA
0962 default y
0963 help
0964 Say Y here if you want to control the backlight of your display.
0965
0966 config FB_I740
0967 tristate "Intel740 support"
0968 depends on FB && PCI
0969 select FB_MODE_HELPERS
0970 select FB_CFB_FILLRECT
0971 select FB_CFB_COPYAREA
0972 select FB_CFB_IMAGEBLIT
0973 select VGASTATE
0974 select FB_DDC
0975 help
0976 This driver supports graphics cards based on Intel740 chip.
0977
0978 config FB_I810
0979 tristate "Intel 810/815 support"
0980 depends on FB && PCI && X86_32 && AGP_INTEL
0981 select FB_MODE_HELPERS
0982 select FB_CFB_FILLRECT
0983 select FB_CFB_COPYAREA
0984 select FB_CFB_IMAGEBLIT
0985 select VGASTATE
0986 help
0987 This driver supports the on-board graphics built in to the Intel 810
0988 and 815 chipsets. Say Y if you have and plan to use such a board.
0989
0990 To compile this driver as a module, choose M here: the
0991 module will be called i810fb.
0992
0993 For more information, please read
0994 <file:Documentation/fb/intel810.rst>
0995
0996 config FB_I810_GTF
0997 bool "use VESA Generalized Timing Formula"
0998 depends on FB_I810
0999 help
1000 If you say Y, then the VESA standard, Generalized Timing Formula
1001 or GTF, will be used to calculate the required video timing values
1002 per video mode. Since the GTF allows nondiscrete timings
1003 (nondiscrete being a range of values as opposed to discrete being a
1004 set of values), you'll be able to use any combination of horizontal
1005 and vertical resolutions, and vertical refresh rates without having
1006 to specify your own timing parameters. This is especially useful
1007 to maximize the performance of an aging display, or if you just
1008 have a display with nonstandard dimensions. A VESA compliant
1009 monitor is recommended, but can still work with non-compliant ones.
1010 If you need or want this, then select this option. The timings may
1011 not be compliant with Intel's recommended values. Use at your own
1012 risk.
1013
1014 If you say N, the driver will revert to discrete video timings
1015 using a set recommended by Intel in their documentation.
1016
1017 If unsure, say N.
1018
1019 config FB_I810_I2C
1020 bool "Enable DDC Support"
1021 depends on FB_I810 && FB_I810_GTF
1022 select FB_DDC
1023 help
1024 Add DDC/I2C support for i810fb. This will allow the driver to get
1025 display information, especially for monitors with fickle timings.
1026
1027 If unsure, say Y.
1028
1029 config FB_LE80578
1030 tristate "Intel LE80578 (Vermilion) support"
1031 depends on FB && PCI && X86
1032 select FB_MODE_HELPERS
1033 select FB_CFB_FILLRECT
1034 select FB_CFB_COPYAREA
1035 select FB_CFB_IMAGEBLIT
1036 help
1037 This driver supports the LE80578 (Vermilion Range) chipset
1038
1039 config FB_CARILLO_RANCH
1040 tristate "Intel Carillo Ranch support"
1041 depends on FB_LE80578 && FB && PCI && X86
1042 help
1043 This driver supports the LE80578 (Carillo Ranch) board
1044
1045 config FB_INTEL
1046 tristate "Intel 830M/845G/852GM/855GM/865G/915G/945G/945GM/965G/965GM support"
1047 depends on FB && PCI && X86 && AGP_INTEL && EXPERT
1048 select FB_MODE_HELPERS
1049 select FB_CFB_FILLRECT
1050 select FB_CFB_COPYAREA
1051 select FB_CFB_IMAGEBLIT
1052 select BOOT_VESA_SUPPORT if FB_INTEL = y
1053 depends on !DRM_I915
1054 help
1055 This driver supports the on-board graphics built in to the Intel
1056 830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM/965G/965GM chipsets.
1057 Say Y if you have and plan to use such a board.
1058
1059 To make FB_INTEL=Y work you need to say AGP_INTEL=y too.
1060
1061 To compile this driver as a module, choose M here: the
1062 module will be called intelfb.
1063
1064 For more information, please read <file:Documentation/fb/intelfb.rst>
1065
1066 config FB_INTEL_DEBUG
1067 bool "Intel driver Debug Messages"
1068 depends on FB_INTEL
1069 help
1070 Say Y here if you want the Intel driver to output all sorts
1071 of debugging information to provide to the maintainer when
1072 something goes wrong.
1073
1074 config FB_INTEL_I2C
1075 bool "DDC/I2C for Intel framebuffer support"
1076 depends on FB_INTEL
1077 select FB_DDC
1078 default y
1079 help
1080 Say Y here if you want DDC/I2C support for your on-board Intel graphics.
1081
1082 config FB_MATROX
1083 tristate "Matrox acceleration"
1084 depends on FB && PCI
1085 select FB_CFB_FILLRECT
1086 select FB_CFB_COPYAREA
1087 select FB_CFB_IMAGEBLIT
1088 select FB_TILEBLITTING
1089 select FB_MACMODES if PPC_PMAC
1090 help
1091 Say Y here if you have a Matrox Millennium, Matrox Millennium II,
1092 Matrox Mystique, Matrox Mystique 220, Matrox Productiva G100, Matrox
1093 Mystique G200, Matrox Millennium G200, Matrox Marvel G200 video,
1094 Matrox G400, G450 or G550 card in your box.
1095
1096 To compile this driver as a module, choose M here: the
1097 module will be called matroxfb.
1098
1099 You can pass several parameters to the driver at boot time or at
1100 module load time. The parameters look like "video=matroxfb:XXX", and
1101 are described in <file:Documentation/fb/matroxfb.rst>.
1102
1103 config FB_MATROX_MILLENIUM
1104 bool "Millennium I/II support"
1105 depends on FB_MATROX
1106 help
1107 Say Y here if you have a Matrox Millennium or Matrox Millennium II
1108 video card. If you select "Advanced lowlevel driver options" below,
1109 you should check 4 bpp packed pixel, 8 bpp packed pixel, 16 bpp
1110 packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can
1111 also use font widths different from 8.
1112
1113 config FB_MATROX_MYSTIQUE
1114 bool "Mystique support"
1115 depends on FB_MATROX
1116 help
1117 Say Y here if you have a Matrox Mystique or Matrox Mystique 220
1118 video card. If you select "Advanced lowlevel driver options" below,
1119 you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp
1120 packed pixel and 32 bpp packed pixel. You can also use font widths
1121 different from 8.
1122
1123 config FB_MATROX_G
1124 bool "G100/G200/G400/G450/G550 support"
1125 depends on FB_MATROX
1126 help
1127 Say Y here if you have a Matrox G100, G200, G400, G450 or G550 based
1128 video card. If you select "Advanced lowlevel driver options", you
1129 should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed
1130 pixel and 32 bpp packed pixel. You can also use font widths
1131 different from 8.
1132
1133 If you need support for G400 secondary head, you must say Y to
1134 "Matrox I2C support" and "G400 second head support" right below.
1135 G450/G550 secondary head and digital output are supported without
1136 additional modules.
1137
1138 The driver starts in monitor mode. You must use the matroxset tool
1139 (available at <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to
1140 swap primary and secondary head outputs, or to change output mode.
1141 Secondary head driver always start in 640x480 resolution and you
1142 must use fbset to change it.
1143
1144 Do not forget that second head supports only 16 and 32 bpp
1145 packed pixels, so it is a good idea to compile them into the kernel
1146 too. You can use only some font widths, as the driver uses generic
1147 painting procedures (the secondary head does not use acceleration
1148 engine).
1149
1150 G450/G550 hardware can display TV picture only from secondary CRTC,
1151 and it performs no scaling, so picture must have 525 or 625 lines.
1152
1153 config FB_MATROX_I2C
1154 tristate "Matrox I2C support"
1155 depends on FB_MATROX
1156 select FB_DDC
1157 help
1158 This drivers creates I2C buses which are needed for accessing the
1159 DDC (I2C) bus present on all Matroxes, an I2C bus which
1160 interconnects Matrox optional devices, like MGA-TVO on G200 and
1161 G400, and the secondary head DDC bus, present on G400 only.
1162
1163 You can say Y or M here if you want to experiment with monitor
1164 detection code. You must say Y or M here if you want to use either
1165 second head of G400 or MGA-TVO on G200 or G400.
1166
1167 If you compile it as module, it will create a module named
1168 i2c-matroxfb.
1169
1170 config FB_MATROX_MAVEN
1171 tristate "G400 second head support"
1172 depends on FB_MATROX_G && FB_MATROX_I2C
1173 help
1174 WARNING !!! This support does not work with G450 !!!
1175
1176 Say Y or M here if you want to use a secondary head (meaning two
1177 monitors in parallel) on G400 or MGA-TVO add-on on G200. Secondary
1178 head is not compatible with accelerated XFree 3.3.x SVGA servers -
1179 secondary head output is blanked while you are in X. With XFree
1180 3.9.17 preview you can use both heads if you use SVGA over fbdev or
1181 the fbdev driver on first head and the fbdev driver on second head.
1182
1183 If you compile it as module, two modules are created,
1184 matroxfb_crtc2 and matroxfb_maven. Matroxfb_maven is needed for
1185 both G200 and G400, matroxfb_crtc2 is needed only by G400. You must
1186 also load i2c-matroxfb to get it to run.
1187
1188 The driver starts in monitor mode and you must use the matroxset
1189 tool (available at
1190 <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to switch it to
1191 PAL or NTSC or to swap primary and secondary head outputs.
1192 Secondary head driver also always start in 640x480 resolution, you
1193 must use fbset to change it.
1194
1195 Also do not forget that second head supports only 16 and 32 bpp
1196 packed pixels, so it is a good idea to compile them into the kernel
1197 too. You can use only some font widths, as the driver uses generic
1198 painting procedures (the secondary head does not use acceleration
1199 engine).
1200
1201 config FB_RADEON
1202 tristate "ATI Radeon display support"
1203 depends on FB && PCI
1204 select FB_BACKLIGHT if FB_RADEON_BACKLIGHT
1205 select FB_MODE_HELPERS
1206 select FB_CFB_FILLRECT
1207 select FB_CFB_COPYAREA
1208 select FB_CFB_IMAGEBLIT
1209 select FB_MACMODES if PPC
1210 help
1211 Choose this option if you want to use an ATI Radeon graphics card as
1212 a framebuffer device. There are both PCI and AGP versions. You
1213 don't need to choose this to run the Radeon in plain VGA mode.
1214
1215 There is a product page at
1216 https://products.amd.com/en-us/GraphicCardResult.aspx
1217
1218 config FB_RADEON_I2C
1219 bool "DDC/I2C for ATI Radeon support"
1220 depends on FB_RADEON
1221 select FB_DDC
1222 default y
1223 help
1224 Say Y here if you want DDC/I2C support for your Radeon board.
1225
1226 config FB_RADEON_BACKLIGHT
1227 bool "Support for backlight control"
1228 depends on FB_RADEON
1229 default y
1230 help
1231 Say Y here if you want to control the backlight of your display.
1232
1233 config FB_RADEON_DEBUG
1234 bool "Lots of debug output from Radeon driver"
1235 depends on FB_RADEON
1236 help
1237 Say Y here if you want the Radeon driver to output all sorts
1238 of debugging information to provide to the maintainer when
1239 something goes wrong.
1240
1241 config FB_ATY128
1242 tristate "ATI Rage128 display support"
1243 depends on FB && PCI
1244 select FB_CFB_FILLRECT
1245 select FB_CFB_COPYAREA
1246 select FB_CFB_IMAGEBLIT
1247 select FB_BACKLIGHT if FB_ATY128_BACKLIGHT
1248 select FB_MACMODES if PPC_PMAC
1249 help
1250 This driver supports graphics boards with the ATI Rage128 chips.
1251 Say Y if you have such a graphics board and read
1252 <file:Documentation/fb/aty128fb.rst>.
1253
1254 To compile this driver as a module, choose M here: the
1255 module will be called aty128fb.
1256
1257 config FB_ATY128_BACKLIGHT
1258 bool "Support for backlight control"
1259 depends on FB_ATY128
1260 default y
1261 help
1262 Say Y here if you want to control the backlight of your display.
1263
1264 config FB_ATY
1265 tristate "ATI Mach64 display support" if PCI || ATARI
1266 depends on FB && !SPARC32
1267 select FB_CFB_FILLRECT
1268 select FB_CFB_COPYAREA
1269 select FB_CFB_IMAGEBLIT
1270 select FB_BACKLIGHT if FB_ATY_BACKLIGHT
1271 select FB_MACMODES if PPC
1272 select FB_ATY_CT if SPARC64 && PCI
1273 help
1274 This driver supports graphics boards with the ATI Mach64 chips.
1275 Say Y if you have such a graphics board.
1276
1277 To compile this driver as a module, choose M here: the
1278 module will be called atyfb.
1279
1280 config FB_ATY_CT
1281 bool "Mach64 CT/VT/GT/LT (incl. 3D RAGE) support"
1282 depends on PCI && FB_ATY
1283 help
1284 Say Y here to support use of ATI's 64-bit Rage boards (or other
1285 boards based on the Mach64 CT, VT, GT, and LT chipsets) as a
1286 framebuffer device. The ATI product support page for these boards
1287 is at <http://support.ati.com/products/pc/mach64/mach64.html>.
1288
1289 config FB_ATY_GENERIC_LCD
1290 bool "Mach64 generic LCD support"
1291 depends on FB_ATY_CT
1292 help
1293 Say Y if you have a laptop with an ATI Rage LT PRO, Rage Mobility,
1294 Rage XC, or Rage XL chipset.
1295
1296 config FB_ATY_GX
1297 bool "Mach64 GX support" if PCI
1298 depends on FB_ATY
1299 default y if ATARI
1300 help
1301 Say Y here to support use of the ATI Mach64 Graphics Expression
1302 board (or other boards based on the Mach64 GX chipset) as a
1303 framebuffer device. The ATI product support page for these boards
1304 is at
1305 <http://support.ati.com/products/pc/mach64/graphics_xpression.html>.
1306
1307 config FB_ATY_BACKLIGHT
1308 bool "Support for backlight control"
1309 depends on FB_ATY
1310 default y
1311 help
1312 Say Y here if you want to control the backlight of your display.
1313
1314 config FB_S3
1315 tristate "S3 Trio/Virge support"
1316 depends on FB && PCI
1317 select FB_CFB_FILLRECT
1318 select FB_CFB_COPYAREA
1319 select FB_CFB_IMAGEBLIT
1320 select FB_TILEBLITTING
1321 select FB_SVGALIB
1322 select VGASTATE
1323 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1324 help
1325 Driver for graphics boards with S3 Trio / S3 Virge chip.
1326
1327 config FB_S3_DDC
1328 bool "DDC for S3 support"
1329 depends on FB_S3
1330 select FB_DDC
1331 default y
1332 help
1333 Say Y here if you want DDC support for your S3 graphics card.
1334
1335 config FB_SAVAGE
1336 tristate "S3 Savage support"
1337 depends on FB && PCI
1338 select FB_MODE_HELPERS
1339 select FB_CFB_FILLRECT
1340 select FB_CFB_COPYAREA
1341 select FB_CFB_IMAGEBLIT
1342 select VGASTATE
1343 help
1344 This driver supports notebooks and computers with S3 Savage PCI/AGP
1345 chips.
1346
1347 Say Y if you have such a graphics card.
1348
1349 To compile this driver as a module, choose M here; the module
1350 will be called savagefb.
1351
1352 config FB_SAVAGE_I2C
1353 bool "Enable DDC2 Support"
1354 depends on FB_SAVAGE
1355 select FB_DDC
1356 help
1357 This enables I2C support for S3 Savage Chipsets. This is used
1358 only for getting EDID information from the attached display
1359 allowing for robust video mode handling and switching.
1360
1361 Because fbdev-2.6 requires that drivers must be able to
1362 independently validate video mode parameters, you should say Y
1363 here.
1364
1365 config FB_SAVAGE_ACCEL
1366 bool "Enable Console Acceleration"
1367 depends on FB_SAVAGE
1368 help
1369 This option will compile in console acceleration support. If
1370 the resulting framebuffer console has bothersome glitches, then
1371 choose N here.
1372
1373 config FB_SIS
1374 tristate "SiS/XGI display support"
1375 depends on FB && PCI
1376 select FB_CFB_FILLRECT
1377 select FB_CFB_COPYAREA
1378 select FB_CFB_IMAGEBLIT
1379 select BOOT_VESA_SUPPORT if FB_SIS = y
1380 select FB_SIS_300 if !FB_SIS_315
1381 help
1382 This is the frame buffer device driver for the SiS 300, 315, 330
1383 and 340 series as well as XGI V3XT, V5, V8, Z7 graphics chipsets.
1384 Specs available at <https://www.sis.com> and <http://www.xgitech.com>.
1385
1386 To compile this driver as a module, choose M here; the module
1387 will be called sisfb.
1388
1389 config FB_SIS_300
1390 bool "SiS 300 series support"
1391 depends on FB_SIS
1392 help
1393 Say Y here to support use of the SiS 300/305, 540, 630 and 730.
1394
1395 config FB_SIS_315
1396 bool "SiS 315/330/340 series and XGI support"
1397 depends on FB_SIS
1398 help
1399 Say Y here to support use of the SiS 315, 330 and 340 series
1400 (315/H/PRO, 55x, 650, 651, 740, 330, 661, 741, 760, 761) as well
1401 as XGI V3XT, V5, V8 and Z7.
1402
1403 config FB_VIA
1404 tristate "VIA UniChrome (Pro) and Chrome9 display support"
1405 depends on FB && PCI && GPIOLIB && I2C && (X86 || COMPILE_TEST)
1406 select FB_CFB_FILLRECT
1407 select FB_CFB_COPYAREA
1408 select FB_CFB_IMAGEBLIT
1409 select I2C_ALGOBIT
1410 help
1411 This is the frame buffer device driver for Graphics chips of VIA
1412 UniChrome (Pro) Family (CLE266,PM800/CN400,P4M800CE/P4M800Pro/
1413 CN700/VN800,CX700/VX700,P4M890) and Chrome9 Family (K8M890,CN896
1414 /P4M900,VX800)
1415 Say Y if you have a VIA UniChrome graphics board.
1416
1417 To compile this driver as a module, choose M here: the
1418 module will be called viafb.
1419
1420 if FB_VIA
1421
1422 config FB_VIA_DIRECT_PROCFS
1423 bool "direct hardware access via procfs (DEPRECATED)(DANGEROUS)"
1424 help
1425 Allow direct hardware access to some output registers via procfs.
1426 This is dangerous but may provide the only chance to get the
1427 correct output device configuration.
1428 Its use is strongly discouraged.
1429
1430 config FB_VIA_X_COMPATIBILITY
1431 bool "X server compatibility"
1432 help
1433 This option reduces the functionality (power saving, ...) of the
1434 framebuffer to avoid negative impact on the OpenChrome X server.
1435 If you use any X server other than fbdev you should enable this
1436 otherwise it should be safe to disable it and allow using all
1437 features.
1438
1439 endif
1440
1441 config FB_NEOMAGIC
1442 tristate "NeoMagic display support"
1443 depends on FB && PCI
1444 select FB_MODE_HELPERS
1445 select FB_CFB_FILLRECT
1446 select FB_CFB_COPYAREA
1447 select FB_CFB_IMAGEBLIT
1448 select VGASTATE
1449 help
1450 This driver supports notebooks with NeoMagic PCI chips.
1451 Say Y if you have such a graphics card.
1452
1453 To compile this driver as a module, choose M here: the
1454 module will be called neofb.
1455
1456 config FB_KYRO
1457 tristate "IMG Kyro support"
1458 depends on FB && PCI
1459 select FB_CFB_FILLRECT
1460 select FB_CFB_COPYAREA
1461 select FB_CFB_IMAGEBLIT
1462 help
1463 Say Y here if you have a STG4000 / Kyro / PowerVR 3 based
1464 graphics board.
1465
1466 To compile this driver as a module, choose M here: the
1467 module will be called kyrofb.
1468
1469 config FB_3DFX
1470 tristate "3Dfx Banshee/Voodoo3/Voodoo5 display support"
1471 depends on FB && PCI
1472 select FB_CFB_IMAGEBLIT
1473 select FB_CFB_FILLRECT
1474 select FB_CFB_COPYAREA
1475 select FB_MODE_HELPERS
1476 help
1477 This driver supports graphics boards with the 3Dfx Banshee,
1478 Voodoo3 or VSA-100 (aka Voodoo4/5) chips. Say Y if you have
1479 such a graphics board.
1480
1481 To compile this driver as a module, choose M here: the
1482 module will be called tdfxfb.
1483
1484 config FB_3DFX_ACCEL
1485 bool "3Dfx Acceleration functions"
1486 depends on FB_3DFX
1487 help
1488 This will compile the 3Dfx Banshee/Voodoo3/VSA-100 frame buffer
1489 device driver with acceleration functions.
1490
1491 config FB_3DFX_I2C
1492 bool "Enable DDC/I2C support"
1493 depends on FB_3DFX
1494 select FB_DDC
1495 default y
1496 help
1497 Say Y here if you want DDC/I2C support for your 3dfx Voodoo3.
1498
1499 config FB_VOODOO1
1500 tristate "3Dfx Voodoo Graphics (sst1) support"
1501 depends on FB && PCI
1502 select FB_CFB_FILLRECT
1503 select FB_CFB_COPYAREA
1504 select FB_CFB_IMAGEBLIT
1505 help
1506 Say Y here if you have a 3Dfx Voodoo Graphics (Voodoo1/sst1) or
1507 Voodoo2 (cvg) based graphics card.
1508
1509 To compile this driver as a module, choose M here: the
1510 module will be called sstfb.
1511
1512 WARNING: Do not use any application that uses the 3D engine
1513 (namely glide) while using this driver.
1514 Please read the <file:Documentation/fb/sstfb.rst> for supported
1515 options and other important info support.
1516
1517 config FB_VT8623
1518 tristate "VIA VT8623 support"
1519 depends on FB && PCI
1520 select FB_CFB_FILLRECT
1521 select FB_CFB_COPYAREA
1522 select FB_CFB_IMAGEBLIT
1523 select FB_TILEBLITTING
1524 select FB_SVGALIB
1525 select VGASTATE
1526 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1527 help
1528 Driver for CastleRock integrated graphics core in the
1529 VIA VT8623 [Apollo CLE266] chipset.
1530
1531 config FB_TRIDENT
1532 tristate "Trident/CyberXXX/CyberBlade support"
1533 depends on FB && PCI
1534 select FB_CFB_FILLRECT
1535 select FB_CFB_COPYAREA
1536 select FB_CFB_IMAGEBLIT
1537 select FB_DDC
1538 select FB_MODE_HELPERS
1539 help
1540 This is the frame buffer device driver for Trident PCI/AGP chipsets.
1541 Supported chipset families are TGUI 9440/96XX, 3DImage, Blade3D
1542 and Blade XP.
1543 There are also integrated versions of these chips called CyberXXXX,
1544 CyberImage or CyberBlade. These chips are mostly found in laptops
1545 but also on some motherboards including early VIA EPIA motherboards.
1546 For more information, read <file:Documentation/fb/tridentfb.rst>
1547
1548 Say Y if you have such a graphics board.
1549
1550 To compile this driver as a module, choose M here: the
1551 module will be called tridentfb.
1552
1553 config FB_ARK
1554 tristate "ARK 2000PV support"
1555 depends on FB && PCI
1556 select FB_CFB_FILLRECT
1557 select FB_CFB_COPYAREA
1558 select FB_CFB_IMAGEBLIT
1559 select FB_TILEBLITTING
1560 select FB_SVGALIB
1561 select VGASTATE
1562 select FONT_8x16 if FRAMEBUFFER_CONSOLE
1563 help
1564 Driver for PCI graphics boards with ARK 2000PV chip
1565 and ICS 5342 RAMDAC.
1566
1567 config FB_PM3
1568 tristate "Permedia3 support"
1569 depends on FB && PCI
1570 select FB_CFB_FILLRECT
1571 select FB_CFB_COPYAREA
1572 select FB_CFB_IMAGEBLIT
1573 help
1574 This is the frame buffer device driver for the 3DLabs Permedia3
1575 chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 &
1576 similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000
1577 and maybe other boards.
1578
1579 config FB_CARMINE
1580 tristate "Fujitsu carmine frame buffer support"
1581 depends on FB && PCI
1582 select FB_CFB_FILLRECT
1583 select FB_CFB_COPYAREA
1584 select FB_CFB_IMAGEBLIT
1585 help
1586 This is the frame buffer device driver for the Fujitsu Carmine chip.
1587 The driver provides two independent frame buffer devices.
1588
1589 choice
1590 depends on FB_CARMINE
1591 prompt "DRAM timing"
1592 default FB_CARMINE_DRAM_EVAL
1593
1594 config FB_CARMINE_DRAM_EVAL
1595 bool "Eval board timings"
1596 help
1597 Use timings which work on the eval card.
1598
1599 config CARMINE_DRAM_CUSTOM
1600 bool "Custom board timings"
1601 help
1602 Use custom board timings.
1603 endchoice
1604
1605 config FB_AU1100
1606 bool "Au1100 LCD Driver"
1607 depends on (FB = y) && MIPS_ALCHEMY
1608 select FB_CFB_FILLRECT
1609 select FB_CFB_COPYAREA
1610 select FB_CFB_IMAGEBLIT
1611 help
1612 This is the framebuffer driver for the AMD Au1100 SOC. It can drive
1613 various panels and CRTs by passing in kernel cmd line option
1614 au1100fb:panel=<name>.
1615
1616 config FB_AU1200
1617 bool "Au1200/Au1300 LCD Driver"
1618 depends on (FB = y) && MIPS_ALCHEMY
1619 select FB_SYS_FILLRECT
1620 select FB_SYS_COPYAREA
1621 select FB_SYS_IMAGEBLIT
1622 select FB_SYS_FOPS
1623 help
1624 This is the framebuffer driver for the Au1200/Au1300 SOCs.
1625 It can drive various panels and CRTs by passing in kernel cmd line
1626 option au1200fb:panel=<name>.
1627
1628 config FB_VT8500
1629 bool "VIA VT8500 framebuffer support"
1630 depends on (FB = y) && ARM && ARCH_VT8500
1631 select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS)
1632 select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS)
1633 select FB_SYS_IMAGEBLIT
1634 select FB_MODE_HELPERS
1635 select VIDEOMODE_HELPERS
1636 help
1637 This is the framebuffer driver for VIA VT8500 integrated LCD
1638 controller.
1639
1640 config FB_WM8505
1641 bool "Wondermedia WM8xxx-series frame buffer support"
1642 depends on (FB = y) && HAS_IOMEM && (ARCH_VT8500 || COMPILE_TEST)
1643 select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS)
1644 select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS)
1645 select FB_SYS_IMAGEBLIT
1646 select FB_MODE_HELPERS
1647 select VIDEOMODE_HELPERS
1648 help
1649 This is the framebuffer driver for WonderMedia WM8xxx-series
1650 integrated LCD controller. This driver covers the WM8505, WM8650
1651 and WM8850 SoCs.
1652
1653 config FB_WMT_GE_ROPS
1654 bool "VT8500/WM8xxx accelerated raster ops support"
1655 depends on (FB = y) && (FB_VT8500 || FB_WM8505)
1656 help
1657 This adds support for accelerated raster operations on the
1658 VIA VT8500 and Wondermedia 85xx series SoCs.
1659
1660 source "drivers/video/fbdev/geode/Kconfig"
1661
1662 config FB_HIT
1663 tristate "HD64461 Frame Buffer support"
1664 depends on FB && HD64461
1665 select FB_CFB_FILLRECT
1666 select FB_CFB_COPYAREA
1667 select FB_CFB_IMAGEBLIT
1668 help
1669 This is the frame buffer device driver for the Hitachi HD64461 LCD
1670 frame buffer card.
1671
1672 config FB_PMAG_AA
1673 tristate "PMAG-AA TURBOchannel framebuffer support"
1674 depends on FB && TC
1675 select FB_CFB_FILLRECT
1676 select FB_CFB_COPYAREA
1677 select FB_CFB_IMAGEBLIT
1678 help
1679 Support for the PMAG-AA TURBOchannel framebuffer card (1280x1024x1)
1680 used mainly in the MIPS-based DECstation series.
1681
1682 config FB_PMAG_BA
1683 tristate "PMAG-BA TURBOchannel framebuffer support"
1684 depends on FB && TC
1685 select FB_CFB_FILLRECT
1686 select FB_CFB_COPYAREA
1687 select FB_CFB_IMAGEBLIT
1688 help
1689 Support for the PMAG-BA TURBOchannel framebuffer card (1024x864x8)
1690 used mainly in the MIPS-based DECstation series.
1691
1692 config FB_PMAGB_B
1693 tristate "PMAGB-B TURBOchannel framebuffer support"
1694 depends on FB && TC
1695 select FB_CFB_FILLRECT
1696 select FB_CFB_COPYAREA
1697 select FB_CFB_IMAGEBLIT
1698 help
1699 Support for the PMAGB-B TURBOchannel framebuffer card used mainly
1700 in the MIPS-based DECstation series. The card is currently only
1701 supported in 1280x1024x8 mode.
1702
1703 config FB_MAXINE
1704 bool "Maxine (Personal DECstation) onboard framebuffer support"
1705 depends on (FB = y) && MACH_DECSTATION
1706 select FB_CFB_FILLRECT
1707 select FB_CFB_COPYAREA
1708 select FB_CFB_IMAGEBLIT
1709 help
1710 Support for the onboard framebuffer (1024x768x8) in the Personal
1711 DECstation series (Personal DECstation 5000/20, /25, /33, /50,
1712 Codename "Maxine").
1713
1714 config FB_G364
1715 bool "G364 frame buffer support"
1716 depends on (FB = y) && (MIPS_MAGNUM_4000 || OLIVETTI_M700)
1717 select FB_CFB_FILLRECT
1718 select FB_CFB_COPYAREA
1719 select FB_CFB_IMAGEBLIT
1720 help
1721 The G364 driver is the framebuffer used in MIPS Magnum 4000 and
1722 Olivetti M700-10 systems.
1723
1724 config FB_68328
1725 bool "Motorola 68328 native frame buffer support"
1726 depends on (FB = y) && (M68328 || M68EZ328 || M68VZ328)
1727 select FB_CFB_FILLRECT
1728 select FB_CFB_COPYAREA
1729 select FB_CFB_IMAGEBLIT
1730 help
1731 Say Y here if you want to support the built-in frame buffer of
1732 the Motorola 68328 CPU family.
1733
1734 config FB_PXA168
1735 tristate "PXA168/910 LCD framebuffer support"
1736 depends on FB && HAVE_CLK && HAS_IOMEM
1737 depends on CPU_PXA168 || CPU_PXA910 || COMPILE_TEST
1738 select FB_CFB_FILLRECT
1739 select FB_CFB_COPYAREA
1740 select FB_CFB_IMAGEBLIT
1741 help
1742 Frame buffer driver for the built-in LCD controller in the Marvell
1743 MMP processor.
1744
1745 config FB_PXA
1746 tristate "PXA LCD framebuffer support"
1747 depends on FB && ARCH_PXA
1748 select FB_CFB_FILLRECT
1749 select FB_CFB_COPYAREA
1750 select FB_CFB_IMAGEBLIT
1751 select VIDEOMODE_HELPERS if OF
1752 select FB_MODE_HELPERS if OF
1753 help
1754 Frame buffer driver for the built-in LCD controller in the Intel
1755 PXA2x0 processor.
1756
1757 This driver is also available as a module ( = code which can be
1758 inserted and removed from the running kernel whenever you want). The
1759 module will be called pxafb. If you want to compile it as a module,
1760 say M here and read <file:Documentation/kbuild/modules.rst>.
1761
1762 If unsure, say N.
1763
1764 config FB_PXA_OVERLAY
1765 bool "Support PXA27x/PXA3xx Overlay(s) as framebuffer"
1766 depends on FB_PXA && (PXA27x || PXA3xx)
1767
1768 config FB_PXA_SMARTPANEL
1769 bool "PXA Smartpanel LCD support"
1770 depends on FB_PXA
1771
1772 config FB_PXA_PARAMETERS
1773 bool "PXA LCD command line parameters"
1774 depends on FB_PXA
1775 help
1776 Enable the use of kernel command line or module parameters
1777 to configure the physical properties of the LCD panel when
1778 using the PXA LCD driver.
1779
1780 This option allows you to override the panel parameters
1781 supplied by the platform in order to support multiple
1782 different models of flatpanel. If you will only be using a
1783 single model of flatpanel then you can safely leave this
1784 option disabled.
1785
1786 <file:Documentation/fb/pxafb.rst> describes the available parameters.
1787
1788 config PXA3XX_GCU
1789 tristate "PXA3xx 2D graphics accelerator driver"
1790 depends on FB_PXA
1791 help
1792 Kernelspace driver for the 2D graphics controller unit (GCU)
1793 found on PXA3xx processors. There is a counterpart driver in the
1794 DirectFB suite, see http://www.directfb.org/
1795
1796 If you compile this as a module, it will be called pxa3xx_gcu.
1797
1798 config FB_FSL_DIU
1799 tristate "Freescale DIU framebuffer support"
1800 depends on FB && FSL_SOC
1801 select FB_MODE_HELPERS
1802 select FB_CFB_FILLRECT
1803 select FB_CFB_COPYAREA
1804 select FB_CFB_IMAGEBLIT
1805 select PPC_LIB_RHEAP
1806 help
1807 Framebuffer driver for the Freescale SoC DIU
1808
1809 config FB_W100
1810 tristate "W100 frame buffer support"
1811 depends on FB && HAS_IOMEM && (ARCH_PXA || COMPILE_TEST)
1812 select FB_CFB_FILLRECT
1813 select FB_CFB_COPYAREA
1814 select FB_CFB_IMAGEBLIT
1815 help
1816 Frame buffer driver for the w100 as found on the Sharp SL-Cxx series.
1817 It can also drive the w3220 chip found on iPAQ hx4700.
1818
1819 This driver is also available as a module ( = code which can be
1820 inserted and removed from the running kernel whenever you want). The
1821 module will be called w100fb. If you want to compile it as a module,
1822 say M here and read <file:Documentation/kbuild/modules.rst>.
1823
1824 If unsure, say N.
1825
1826 config FB_SH_MOBILE_LCDC
1827 tristate "SuperH Mobile LCDC framebuffer support"
1828 depends on FB && HAVE_CLK && HAS_IOMEM
1829 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
1830 select FB_SYS_FILLRECT
1831 select FB_SYS_COPYAREA
1832 select FB_SYS_IMAGEBLIT
1833 select FB_SYS_FOPS
1834 select FB_DEFERRED_IO
1835 select FB_BACKLIGHT
1836 help
1837 Frame buffer driver for the on-chip SH-Mobile LCD controller.
1838
1839 config FB_TMIO
1840 tristate "Toshiba Mobile IO FrameBuffer support"
1841 depends on FB && (MFD_TMIO || COMPILE_TEST)
1842 select FB_CFB_FILLRECT
1843 select FB_CFB_COPYAREA
1844 select FB_CFB_IMAGEBLIT
1845 help
1846 Frame buffer driver for the Toshiba Mobile IO integrated as found
1847 on the Sharp SL-6000 series
1848
1849 This driver is also available as a module ( = code which can be
1850 inserted and removed from the running kernel whenever you want). The
1851 module will be called tmiofb. If you want to compile it as a module,
1852 say M here and read <file:Documentation/kbuild/modules.rst>.
1853
1854 If unsure, say N.
1855
1856 config FB_TMIO_ACCELL
1857 bool "tmiofb acceleration"
1858 depends on FB_TMIO
1859 default y
1860
1861 config FB_S3C
1862 tristate "Samsung S3C framebuffer support"
1863 depends on FB && HAVE_CLK && HAS_IOMEM
1864 depends on (CPU_S3C2416 || ARCH_S3C64XX) || COMPILE_TEST
1865 select FB_CFB_FILLRECT
1866 select FB_CFB_COPYAREA
1867 select FB_CFB_IMAGEBLIT
1868 help
1869 Frame buffer driver for the built-in FB controller in the Samsung
1870 SoC line from the S3C2443 onwards, including the S3C2416, S3C2450,
1871 and the S3C64XX series such as the S3C6400 and S3C6410.
1872
1873 These chips all have the same basic framebuffer design with the
1874 actual capabilities depending on the chip. For instance the S3C6400
1875 and S3C6410 support 4 hardware windows whereas the S3C24XX series
1876 currently only have two.
1877
1878 Currently the support is only for the S3C6400 and S3C6410 SoCs.
1879
1880 config FB_S3C_DEBUG_REGWRITE
1881 bool "Debug register writes"
1882 depends on FB_S3C
1883 help
1884 Show all register writes via pr_debug()
1885
1886 config FB_S3C2410
1887 tristate "S3C2410 LCD framebuffer support"
1888 depends on FB && ARCH_S3C24XX
1889 select FB_CFB_FILLRECT
1890 select FB_CFB_COPYAREA
1891 select FB_CFB_IMAGEBLIT
1892 help
1893 Frame buffer driver for the built-in LCD controller in the Samsung
1894 S3C2410 processor.
1895
1896 This driver is also available as a module ( = code which can be
1897 inserted and removed from the running kernel whenever you want). The
1898 module will be called s3c2410fb. If you want to compile it as a module,
1899 say M here and read <file:Documentation/kbuild/modules.rst>.
1900
1901 If unsure, say N.
1902 config FB_S3C2410_DEBUG
1903 bool "S3C2410 lcd debug messages"
1904 depends on FB_S3C2410
1905 help
1906 Turn on debugging messages. Note that you can set/unset at run time
1907 through sysfs
1908
1909 config FB_SM501
1910 tristate "Silicon Motion SM501 framebuffer support"
1911 depends on FB && MFD_SM501
1912 select FB_CFB_FILLRECT
1913 select FB_CFB_COPYAREA
1914 select FB_CFB_IMAGEBLIT
1915 help
1916 Frame buffer driver for the CRT and LCD controllers in the Silicon
1917 Motion SM501.
1918
1919 This driver is also available as a module ( = code which can be
1920 inserted and removed from the running kernel whenever you want). The
1921 module will be called sm501fb. If you want to compile it as a module,
1922 say M here and read <file:Documentation/kbuild/modules.rst>.
1923
1924 If unsure, say N.
1925
1926 config FB_SMSCUFX
1927 tristate "SMSC UFX6000/7000 USB Framebuffer support"
1928 depends on FB && USB
1929 select FB_MODE_HELPERS
1930 select FB_SYS_FILLRECT
1931 select FB_SYS_COPYAREA
1932 select FB_SYS_IMAGEBLIT
1933 select FB_SYS_FOPS
1934 select FB_DEFERRED_IO
1935 help
1936 This is a kernel framebuffer driver for SMSC UFX USB devices.
1937 Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and
1938 mplayer -vo fbdev. Supports both UFX6000 (USB 2.0) and UFX7000
1939 (USB 3.0) devices.
1940 To compile as a module, choose M here: the module name is smscufx.
1941
1942 config FB_UDL
1943 tristate "Displaylink USB Framebuffer support"
1944 depends on FB && USB
1945 select FB_MODE_HELPERS
1946 select FB_SYS_FILLRECT
1947 select FB_SYS_COPYAREA
1948 select FB_SYS_IMAGEBLIT
1949 select FB_SYS_FOPS
1950 select FB_DEFERRED_IO
1951 help
1952 This is a kernel framebuffer driver for DisplayLink USB devices.
1953 Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and
1954 mplayer -vo fbdev. Supports all USB 2.0 era DisplayLink devices.
1955 To compile as a module, choose M here: the module name is udlfb.
1956
1957 config FB_IBM_GXT4500
1958 tristate "Framebuffer support for IBM GXT4000P/4500P/6000P/6500P adaptors"
1959 depends on FB
1960 select FB_CFB_FILLRECT
1961 select FB_CFB_COPYAREA
1962 select FB_CFB_IMAGEBLIT
1963 help
1964 Say Y here to enable support for the IBM GXT4000P/6000P and
1965 GXT4500P/6500P display adaptor based on Raster Engine RC1000,
1966 found on some IBM System P (pSeries) machines. This driver
1967 doesn't use Geometry Engine GT1000. This driver also supports
1968 AGP Fire GL2/3/4 cards on x86.
1969
1970 config FB_PS3
1971 tristate "PS3 GPU framebuffer driver"
1972 depends on FB && PS3_PS3AV
1973 select FB_SYS_FILLRECT
1974 select FB_SYS_COPYAREA
1975 select FB_SYS_IMAGEBLIT
1976 select FB_SYS_FOPS
1977 help
1978 Include support for the virtual frame buffer in the PS3 platform.
1979
1980 config FB_PS3_DEFAULT_SIZE_M
1981 int "PS3 default frame buffer size (in MiB)"
1982 depends on FB_PS3
1983 default 9
1984 help
1985 This is the default size (in MiB) of the virtual frame buffer in
1986 the PS3.
1987 The default value can be overridden on the kernel command line
1988 using the "ps3fb" option (e.g. "ps3fb=9M");
1989
1990 config FB_XILINX
1991 tristate "Xilinx frame buffer support"
1992 depends on FB && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP)
1993 select FB_CFB_FILLRECT
1994 select FB_CFB_COPYAREA
1995 select FB_CFB_IMAGEBLIT
1996 help
1997 Include support for the Xilinx ML300/ML403 reference design
1998 framebuffer. ML300 carries a 640*480 LCD display on the board,
1999 ML403 uses a standard DB15 VGA connector.
2000
2001 config FB_GOLDFISH
2002 tristate "Goldfish Framebuffer"
2003 depends on FB
2004 depends on GOLDFISH || COMPILE_TEST
2005 select FB_CFB_FILLRECT
2006 select FB_CFB_COPYAREA
2007 select FB_CFB_IMAGEBLIT
2008 help
2009 Framebuffer driver for Goldfish Virtual Platform
2010
2011 config FB_COBALT
2012 tristate "Cobalt server LCD frame buffer support"
2013 depends on FB && MIPS_COBALT
2014
2015 config FB_SH7760
2016 bool "SH7760/SH7763/SH7720/SH7721 LCDC support"
2017 depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \
2018 || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721)
2019 select FB_CFB_FILLRECT
2020 select FB_CFB_COPYAREA
2021 select FB_CFB_IMAGEBLIT
2022 help
2023 Support for the SH7760/SH7763/SH7720/SH7721 integrated
2024 (D)STN/TFT LCD Controller.
2025 Supports display resolutions up to 1024x1024 pixel, grayscale and
2026 color operation, with depths ranging from 1 bpp to 8 bpp monochrome
2027 and 8, 15 or 16 bpp color; 90 degrees clockwise display rotation for
2028 panels <= 320 pixel horizontal resolution.
2029
2030 config FB_DA8XX
2031 tristate "DA8xx/OMAP-L1xx/AM335x Framebuffer support"
2032 depends on FB && HAVE_CLK && HAS_IOMEM
2033 depends on ARCH_DAVINCI_DA8XX || SOC_AM33XX || COMPILE_TEST
2034 select FB_CFB_FILLRECT
2035 select FB_CFB_COPYAREA
2036 select FB_CFB_IMAGEBLIT
2037 select FB_CFB_REV_PIXELS_IN_BYTE
2038 select FB_MODE_HELPERS
2039 select VIDEOMODE_HELPERS
2040 help
2041 This is the frame buffer device driver for the TI LCD controller
2042 found on DA8xx/OMAP-L1xx/AM335x SoCs.
2043 If unsure, say N.
2044
2045 config FB_VIRTUAL
2046 tristate "Virtual Frame Buffer support (ONLY FOR TESTING!)"
2047 depends on FB
2048 select FB_SYS_FILLRECT
2049 select FB_SYS_COPYAREA
2050 select FB_SYS_IMAGEBLIT
2051 select FB_SYS_FOPS
2052 help
2053 This is a `virtual' frame buffer device. It operates on a chunk of
2054 unswappable kernel memory instead of on the memory of a graphics
2055 board. This means you cannot see any output sent to this frame
2056 buffer device, while it does consume precious memory. The main use
2057 of this frame buffer device is testing and debugging the frame
2058 buffer subsystem. Do NOT enable it for normal systems! To protect
2059 the innocent, it has to be enabled explicitly at boot time using the
2060 kernel option `video=vfb:'.
2061
2062 To compile this driver as a module, choose M here: the
2063 module will be called vfb. In order to load it, you must use
2064 the vfb_enable=1 option.
2065
2066 If unsure, say N.
2067
2068 config XEN_FBDEV_FRONTEND
2069 tristate "Xen virtual frame buffer support"
2070 depends on FB && XEN
2071 select FB_SYS_FILLRECT
2072 select FB_SYS_COPYAREA
2073 select FB_SYS_IMAGEBLIT
2074 select FB_SYS_FOPS
2075 select FB_DEFERRED_IO
2076 select XEN_XENBUS_FRONTEND
2077 default y
2078 help
2079 This driver implements the front-end of the Xen virtual
2080 frame buffer driver. It communicates with a back-end
2081 in another domain.
2082
2083 config FB_METRONOME
2084 tristate "E-Ink Metronome/8track controller support"
2085 depends on FB
2086 select FB_SYS_FILLRECT
2087 select FB_SYS_COPYAREA
2088 select FB_SYS_IMAGEBLIT
2089 select FB_SYS_FOPS
2090 select FB_DEFERRED_IO
2091 help
2092 This driver implements support for the E-Ink Metronome
2093 controller. The pre-release name for this device was 8track
2094 and could also have been called by some vendors as PVI-nnnn.
2095
2096 config FB_MB862XX
2097 tristate "Fujitsu MB862xx GDC support"
2098 depends on FB
2099 depends on PCI || (OF && PPC)
2100 select FB_CFB_FILLRECT
2101 select FB_CFB_COPYAREA
2102 select FB_CFB_IMAGEBLIT
2103 help
2104 Frame buffer driver for Fujitsu Carmine/Coral-P(A)/Lime controllers.
2105
2106 choice
2107 prompt "GDC variant"
2108 depends on FB_MB862XX
2109
2110 config FB_MB862XX_PCI_GDC
2111 bool "Carmine/Coral-P(A) GDC"
2112 depends on PCI
2113 help
2114 This enables framebuffer support for Fujitsu Carmine/Coral-P(A)
2115 PCI graphics controller devices.
2116
2117 config FB_MB862XX_LIME
2118 bool "Lime GDC"
2119 depends on OF && PPC
2120 select FB_FOREIGN_ENDIAN
2121 select FB_LITTLE_ENDIAN
2122 help
2123 Framebuffer support for Fujitsu Lime GDC on host CPU bus.
2124
2125 endchoice
2126
2127 config FB_MB862XX_I2C
2128 bool "Support I2C bus on MB862XX GDC"
2129 depends on FB_MB862XX && I2C
2130 depends on FB_MB862XX=m || I2C=y
2131 default y
2132 help
2133 Selecting this option adds Coral-P(A)/Lime GDC I2C bus adapter
2134 driver to support accessing I2C devices on controller's I2C bus.
2135 These are usually some video decoder chips.
2136
2137 config FB_EP93XX
2138 tristate "EP93XX frame buffer support"
2139 depends on FB && ARCH_EP93XX
2140 select FB_CFB_FILLRECT
2141 select FB_CFB_COPYAREA
2142 select FB_CFB_IMAGEBLIT
2143 help
2144 Framebuffer driver for the Cirrus Logic EP93XX series of processors.
2145 This driver is also available as a module. The module will be called
2146 ep93xx-fb.
2147
2148 config FB_PRE_INIT_FB
2149 bool "Don't reinitialize, use bootloader's GDC/Display configuration"
2150 depends on FB && FB_MB862XX_LIME
2151 help
2152 Select this option if display contents should be inherited as set by
2153 the bootloader.
2154
2155 config FB_MX3
2156 tristate "MX3 Framebuffer support"
2157 depends on FB && MX3_IPU
2158 select BACKLIGHT_CLASS_DEVICE
2159 select FB_CFB_FILLRECT
2160 select FB_CFB_COPYAREA
2161 select FB_CFB_IMAGEBLIT
2162 default y
2163 help
2164 This is a framebuffer device for the i.MX31 LCD Controller. So
2165 far only synchronous displays are supported. If you plan to use
2166 an LCD display with your i.MX31 system, say Y here.
2167
2168 config FB_BROADSHEET
2169 tristate "E-Ink Broadsheet/Epson S1D13521 controller support"
2170 depends on FB && (ARCH_PXA || COMPILE_TEST)
2171 select FB_SYS_FILLRECT
2172 select FB_SYS_COPYAREA
2173 select FB_SYS_IMAGEBLIT
2174 select FB_SYS_FOPS
2175 select FB_DEFERRED_IO
2176 help
2177 This driver implements support for the E-Ink Broadsheet
2178 controller. The release name for this device was Epson S1D13521
2179 and could also have been called by other names when coupled with
2180 a bridge adapter.
2181
2182 config FB_HYPERV
2183 tristate "Microsoft Hyper-V Synthetic Video support"
2184 depends on FB && HYPERV
2185 select FB_CFB_FILLRECT
2186 select FB_CFB_COPYAREA
2187 select FB_CFB_IMAGEBLIT
2188 select FB_DEFERRED_IO
2189 select DMA_CMA if HAVE_DMA_CONTIGUOUS && CMA
2190 help
2191 This framebuffer driver supports Microsoft Hyper-V Synthetic Video.
2192
2193 config FB_SIMPLE
2194 tristate "Simple framebuffer support"
2195 depends on FB
2196 depends on !DRM_SIMPLEDRM
2197 select APERTURE_HELPERS
2198 select FB_CFB_FILLRECT
2199 select FB_CFB_COPYAREA
2200 select FB_CFB_IMAGEBLIT
2201 help
2202 Say Y if you want support for a simple frame-buffer.
2203
2204 This driver assumes that the display hardware has been initialized
2205 before the kernel boots, and the kernel will simply render to the
2206 pre-allocated frame buffer surface.
2207
2208 Configuration re: surface address, size, and format must be provided
2209 through device tree, or plain old platform data.
2210
2211 config FB_SSD1307
2212 tristate "Solomon SSD1307 framebuffer support"
2213 depends on FB && I2C
2214 depends on GPIOLIB || COMPILE_TEST
2215 select FB_SYS_FOPS
2216 select FB_SYS_FILLRECT
2217 select FB_SYS_COPYAREA
2218 select FB_SYS_IMAGEBLIT
2219 select FB_DEFERRED_IO
2220 select PWM
2221 select FB_BACKLIGHT
2222 help
2223 This driver implements support for the Solomon SSD1307
2224 OLED controller over I2C.
2225
2226 config FB_SM712
2227 tristate "Silicon Motion SM712 framebuffer support"
2228 depends on FB && PCI
2229 select FB_CFB_FILLRECT
2230 select FB_CFB_COPYAREA
2231 select FB_CFB_IMAGEBLIT
2232 help
2233 Frame buffer driver for the Silicon Motion SM710, SM712, SM721
2234 and SM722 chips.
2235
2236 This driver is also available as a module. The module will be
2237 called sm712fb. If you want to compile it as a module, say M
2238 here and read <file:Documentation/kbuild/modules.rst>.
2239
2240 source "drivers/video/fbdev/omap/Kconfig"
2241 source "drivers/video/fbdev/omap2/Kconfig"
2242 source "drivers/video/fbdev/mmp/Kconfig"