Back to home page

OSCL-LXR

 
 

    


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"