davinci: fb: update the driver in preparation for addition of power management features
[safe/jmp/linux-2.6] / drivers / video / Kconfig
index a1c8923..5a5c303 100644 (file)
@@ -3,23 +3,28 @@
 #
 
 menu "Graphics support"
+       depends on HAS_IOMEM
 
-config FIRMWARE_EDID
-       bool "Enable firmware EDID"
-       default y
-       ---help---
-         This enables access to the EDID transferred from the firmware.
-        On the i386, this is from the Video BIOS. Enable this if DDC/I2C
-        transfers do not work for your driver and if you are using
-        nvidiafb, i810fb or savagefb.
+config HAVE_FB_ATMEL
+       bool
 
-        In general, choosing Y for this option is safe.  If you
-        experience extremely long delays while booting before you get
-        something on your display, try setting this to N.  Matrox cards in
-        combination with certain motherboards and monitors are known to
-        suffer from this problem.
+source "drivers/char/agp/Kconfig"
+
+source "drivers/gpu/vga/Kconfig"
+
+source "drivers/gpu/drm/Kconfig"
 
-config FB
+config VGASTATE
+       tristate
+       default n
+
+config VIDEO_OUTPUT_CONTROL
+       tristate "Lowlevel video output switch controls"
+       help
+         This framework adds support for low-level control of the video 
+         output switch.
+
+menuconfig FB
        tristate "Support for frame buffer devices"
        ---help---
          The frame buffer device provides an abstraction for the graphics
@@ -41,7 +46,7 @@ config FB
          You need an utility program called fbset to make full use of frame
          buffer devices. Please read <file:Documentation/fb/framebuffer.txt>
          and the Framebuffer-HOWTO at
-         <http://www.tahallah.demon.co.uk/programming/prog.html> for more
+         <http://www.munted.org.uk/programming/Framebuffer-HOWTO-1.2.html> for more
          information.
 
          Say Y here and to the driver for your graphics board below if you
@@ -53,11 +58,37 @@ config FB
          (e.g. an accelerated X server) and that are not frame buffer
          device-aware may cause unexpected results. If unsure, say N.
 
+config FIRMWARE_EDID
+       bool "Enable firmware EDID"
+       depends on FB
+       default n
+       ---help---
+         This enables access to the EDID transferred from the firmware.
+        On the i386, this is from the Video BIOS. Enable this if DDC/I2C
+        transfers do not work for your driver and if you are using
+        nvidiafb, i810fb or savagefb.
+
+        In general, choosing Y for this option is safe.  If you
+        experience extremely long delays while booting before you get
+        something on your display, try setting this to N.  Matrox cards in
+        combination with certain motherboards and monitors are known to
+        suffer from this problem.
+
 config FB_DDC
        tristate
-       depends on FB && I2C && I2C_ALGOBIT
+       depends on FB
+       select I2C_ALGOBIT
+       select I2C
        default n
 
+config FB_BOOT_VESA_SUPPORT
+       bool
+       depends on FB
+       default n
+       ---help---
+         If true, at least one selected framebuffer driver can take advantage
+         of VESA video modes set at an early boot stage via the vga= parameter.
+
 config FB_CFB_FILLRECT
        tristate
        depends on FB
@@ -85,6 +116,88 @@ config FB_CFB_IMAGEBLIT
          blitting. This is used by drivers that don't provide their own
          (accelerated) version.
 
+config FB_CFB_REV_PIXELS_IN_BYTE
+       bool
+       depends on FB
+       default n
+       ---help---
+         Allow generic frame-buffer functions to work on displays with 1, 2
+         and 4 bits per pixel depths which has opposite order of pixels in
+         byte order to bytes in long order.
+
+config FB_SYS_FILLRECT
+       tristate
+       depends on FB
+       default n
+       ---help---
+         Include the sys_fillrect function for generic software rectangle
+         filling. This is used by drivers that don't provide their own
+         (accelerated) version and the framebuffer is in system RAM.
+
+config FB_SYS_COPYAREA
+       tristate
+       depends on FB
+       default n
+       ---help---
+         Include the sys_copyarea function for generic software area copying.
+         This is used by drivers that don't provide their own (accelerated)
+         version and the framebuffer is in system RAM.
+
+config FB_SYS_IMAGEBLIT
+       tristate
+       depends on FB
+       default n
+       ---help---
+         Include the sys_imageblit function for generic software image
+         blitting. This is used by drivers that don't provide their own
+         (accelerated) version and the framebuffer is in system RAM.
+
+menuconfig FB_FOREIGN_ENDIAN
+       bool "Framebuffer foreign endianness support"
+       depends on FB
+       ---help---
+         This menu will let you enable support for the framebuffers with
+         non-native endianness (e.g. Little-Endian framebuffer on a
+         Big-Endian machine). Most probably you don't have such hardware,
+         so it's safe to say "n" here.
+
+choice
+       prompt "Choice endianness support"
+       depends on FB_FOREIGN_ENDIAN
+
+config FB_BOTH_ENDIAN
+       bool "Support for Big- and Little-Endian framebuffers"
+
+config FB_BIG_ENDIAN
+       bool "Support for Big-Endian framebuffers only"
+
+config FB_LITTLE_ENDIAN
+       bool "Support for Little-Endian framebuffers only"
+
+endchoice
+
+config FB_SYS_FOPS
+       tristate
+       depends on FB
+       default n
+
+config FB_DEFERRED_IO
+       bool
+       depends on FB
+
+config FB_HECUBA
+       tristate
+       depends on FB
+       depends on FB_DEFERRED_IO
+
+config FB_SVGALIB
+       tristate
+       depends on FB
+       default n
+       ---help---
+         Common utility functions useful to fbdev drivers of VGA-based
+         cards.
+
 config FB_MACMODES
        tristate
        depends on FB
@@ -126,6 +239,9 @@ config FB_TILEBLITTING
         This is particularly important to one driver, matroxfb.  If
         unsure, say N.
 
+comment "Frame buffer hardware drivers"
+       depends on FB
+
 config FB_CIRRUS
        tristate "Cirrus Logic support"
        depends on FB && (ZORRO || PCI)
@@ -151,16 +267,24 @@ config FB_PM2
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        help
-         This is the frame buffer device driver for the Permedia2 AGP frame
-         buffer card from ASK, aka `Graphic Blaster Exxtreme'.  There is a
-         product page at
-         <http://www.ask.com.hk/product/Permedia%202/permedia2.htm>.
+         This is the frame buffer device driver for cards based on
+         the 3D Labs Permedia, Permedia 2 and Permedia 2V chips.
+         The driver was tested on the following cards:
+               Diamond FireGL 1000 PRO AGP
+               ELSA Gloria Synergy PCI
+               Appian Jeronimo PRO (both heads) PCI
+               3DLabs Oxygen ACX aka EONtronics Picasso P2 PCI
+               Techsource Raptor GFX-8P (aka Sun PGX-32) on SPARC
+               ASK Graphic Blaster Exxtreme AGP
+
+         To compile this driver as a module, choose M here: the
+         module will be called pm2fb.
 
 config FB_PM2_FIFO_DISCONNECT
        bool "enable FIFO disconnect feature"
        depends on FB_PM2 && PCI
        help
-         Support the Permedia2 FIFO disconnect feature (see CONFIG_FB_PM2).
+         Support the Permedia2 FIFO disconnect feature.
 
 config FB_ARMCLCD
        tristate "ARM PrimeCell PL110 support"
@@ -175,7 +299,7 @@ config FB_ARMCLCD
 
          If you want to compile this as a module (=code which can be
          inserted into and removed from the running kernel), say M
-         here and read <file:Documentation/modules.txt>.  The module
+         here and read <file:Documentation/kbuild/modules.txt>.  The module
          will be called amba-clcd.
 
 choice
@@ -188,7 +312,7 @@ config FB_ARMCLCD_SHARP_LQ035Q7DB02_HRTFT
        bool "LogicPD LCD 3.5\" QVGA w/HRTFT IC"
        help
          This is an implementation of the Sharp LQ035Q7DB02, a 3.5"
-         color QVGA, HRTFT panel.  The LogicPD device includes an
+         color QVGA, HRTFT panel.  The LogicPD device includes
          an integrated HRTFT controller IC.
          The native resolution is 240x320.
 
@@ -243,7 +367,7 @@ endchoice
 
 config FB_ACORN
        bool "Acorn VIDC support"
-       depends on (FB = y) && ARM && (ARCH_ACORN || ARCH_CLPS7500)
+       depends on (FB = y) && ARM && ARCH_ACORN
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -278,7 +402,7 @@ config FB_SA1100
 
 config FB_IMX
        tristate "Motorola i.MX LCD support"
-       depends on FB && ARM && ARCH_IMX
+       depends on FB && (ARCH_MX1 || ARCH_MX2)
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -346,42 +470,6 @@ config FB_AMIGA_AGA
          and CD32. If you intend to run Linux on any of these systems, say Y;
          otherwise say N.
 
-config FB_CYBER
-       tristate "Amiga CyberVision 64 support"
-       depends on FB && ZORRO && BROKEN
-       select FB_CFB_FILLRECT
-       select FB_CFB_COPYAREA
-       select FB_CFB_IMAGEBLIT
-       help
-         This enables support for the Cybervision 64 graphics card from
-         Phase5. Please note that its use is not all that intuitive (i.e. if
-         you have any questions, be sure to ask!). Say N unless you have a
-         Cybervision 64 or plan to get one before you next recompile the
-         kernel. Please note that this driver DOES NOT support the
-         Cybervision 64/3D card, as they use incompatible video chips.
-
-config FB_VIRGE
-       bool "Amiga CyberVision 64/3D support "
-       depends on (FB = y) && ZORRO && BROKEN
-       select FB_CFB_FILLRECT
-       select FB_CFB_COPYAREA
-       select FB_CFB_IMAGEBLIT
-       help
-         This enables support for the Cybervision 64/3D graphics card from
-         Phase5. Please note that its use is not all that intuitive (i.e. if
-         you have any questions, be sure to ask!). Say N unless you have a
-         Cybervision 64/3D or plan to get one before you next recompile the
-         kernel. Please note that this driver DOES NOT support the older
-         Cybervision 64 card, as they use incompatible video chips.
-
-config FB_RETINAZ3
-       tristate "Amiga Retina Z3 support"
-       depends on (FB = y) && ZORRO && BROKEN
-       help
-         This enables support for the Retina Z3 graphics card. Say N unless
-         you have a Retina Z3 or plan to get one before you next recompile
-         the kernel.
-
 config FB_FM2
        bool "Amiga FrameMaster II/Rainbow II support"
        depends on (FB = y) && ZORRO
@@ -395,28 +483,32 @@ config FB_FM2
 config FB_ARC
        tristate "Arc Monochrome LCD board support"
        depends on FB && X86
-       select FB_CFB_FILLRECT
-       select FB_CFB_COPYAREA
-       select FB_CFB_IMAGEBLIT
+       select FB_SYS_FILLRECT
+       select FB_SYS_COPYAREA
+       select FB_SYS_IMAGEBLIT
+       select FB_SYS_FOPS
        help
          This enables support for the Arc Monochrome LCD board. The board
          is based on the KS-108 lcd controller and is typically a matrix
          of 2*n chips. This driver was tested with a 128x64 panel. This
          driver supports it for use with x86 SBCs through a 16 bit GPIO
-         interface (8 bit data, 8 bit control). If you anticpate using
+         interface (8 bit data, 8 bit control). If you anticipate using
          this driver, say Y or M; otherwise say N. You must specify the
          GPIO IO address to be used for setting control and data.
 
 config FB_ATARI
        bool "Atari native chipset support"
-       depends on (FB = y) && ATARI && BROKEN
+       depends on (FB = y) && ATARI
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
        help
          This is the frame buffer device driver for the builtin graphics
          chipset found in Ataris.
 
 config FB_OF
        bool "Open Firmware frame buffer device support"
-       depends on (FB = y) && (PPC64 || PPC_OF)
+       depends on (FB = y) && (PPC64 || PPC_OF) && (!PPC_PSERIES || PCI)
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -460,7 +552,7 @@ config FB_VALKYRIE
 
 config FB_CT65550
        bool "Chips 65550 display support"
-       depends on (FB = y) && PPC32
+       depends on (FB = y) && PPC32 && PCI
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -492,6 +584,8 @@ config FB_VGA16
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select VGASTATE
+       select FONT_8x16 if FRAMEBUFFER_CONSOLE
        help
          This is the frame buffer device driver for VGA 16 color graphic
          cards. Say Y if you have such a card.
@@ -499,12 +593,51 @@ config FB_VGA16
          To compile this driver as a module, choose M here: the
          module will be called vga16fb.
 
+config FB_BF54X_LQ043
+       tristate "SHARP LQ043 TFT LCD (BF548 EZKIT)"
+       depends on FB && (BF54x) && !BF542
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+        This is the framebuffer device driver for a SHARP LQ043T1DG01 TFT LCD
+
+config FB_BFIN_T350MCQB
+       tristate "Varitronix COG-T350MCQB TFT LCD display (BF527 EZKIT)"
+       depends on FB && BLACKFIN
+       select BFIN_GPTIMERS
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+        This is the framebuffer device driver for a Varitronix VL-PS-COG-T350MCQB-01 display TFT LCD
+        This display is a QVGA 320x240 24-bit RGB display interfaced by an 8-bit wide PPI
+        It uses PPI[0..7] PPI_FS1, PPI_FS2 and PPI_CLK.
+
+config FB_BFIN_LQ035Q1
+       tristate "SHARP LQ035Q1DH02 TFT LCD"
+       depends on FB && BLACKFIN && SPI
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       select BFIN_GPTIMERS
+       help
+         This is the framebuffer device driver for a SHARP LQ035Q1DH02 TFT display found on
+         the Blackfin Landscape LCD EZ-Extender Card.
+         This display is a QVGA 320x240 18-bit RGB display interfaced by an 16-bit wide PPI
+         It uses PPI[0..15] PPI_FS1, PPI_FS2 and PPI_CLK.
+
+         To compile this driver as a module, choose M here: the
+         module will be called bfin-lq035q1-fb.
+
 config FB_STI
        tristate "HP STI frame buffer device support"
        depends on FB && PARISC
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select STI_CONSOLE
+       select VT
        default y
        ---help---
          STI refers to the HP "Standard Text Interface" which is a set of
@@ -527,23 +660,50 @@ config FB_MAC
        select FB_CFB_IMAGEBLIT
        select FB_MACMODES
 
-#      bool '  Apple DAFB display support' CONFIG_FB_DAFB
 config FB_HP300
        bool
-       depends on (FB = y) && HP300
-       select FB_CFB_FILLRECT
+       depends on (FB = y) && DIO
        select FB_CFB_IMAGEBLIT
        default y
 
 config FB_TGA
-       tristate "TGA framebuffer support"
-       depends on FB && ALPHA
+       tristate "TGA/SFB+ framebuffer support"
+       depends on FB && (ALPHA || TC)
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       select BITREVERSE
+       ---help---
+         This is the frame buffer device driver for generic TGA and SFB+
+         graphic cards.  These include DEC ZLXp-E1, -E2 and -E3 PCI cards,
+         also known as PBXGA-A, -B and -C, and DEC ZLX-E1, -E2 and -E3
+         TURBOchannel cards, also known as PMAGD-A, -B and -C.
+
+         Due to hardware limitations ZLX-E2 and E3 cards are not supported
+         for DECstation 5000/200 systems.  Additionally due to firmware
+         limitations these cards may cause troubles with booting DECstation
+         5000/240 and /260 systems, but are fully supported under Linux if
+         you manage to get it going. ;-)
+
+         Say Y if you have one of those.
+
+config FB_UVESA
+       tristate "Userspace VESA VGA graphics support"
+       depends on FB && CONNECTOR
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select FB_MODE_HELPERS
        help
-         This is the frame buffer device driver for generic TGA graphic
-         cards. Say Y if you have one of those.
+         This is the frame buffer driver for generic VBE 2.0 compliant
+         graphic cards. It can also take advantage of VBE 3.0 features,
+         such as refresh rate adjustment.
+
+         This driver generally provides more features than vesafb but
+         requires a userspace helper application called 'v86d'. See
+         <file:Documentation/fb/uvesafb.txt> for more information.
+
+         If unsure, say N.
 
 config FB_VESA
        bool "VESA VGA graphics support"
@@ -551,20 +711,36 @@ config FB_VESA
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select FB_BOOT_VESA_SUPPORT
        help
          This is the frame buffer device driver for generic VESA 2.0
          compliant graphic cards. The older VESA 1.2 cards are not supported.
          You will get a boot time penguin logo at no additional cost. Please
          read <file:Documentation/fb/vesafb.txt>. If unsure, say Y.
 
-config FB_IMAC
-       bool "Intel-based Macintosh Framebuffer Support"
+config FB_EFI
+       bool "EFI-based Framebuffer Support"
        depends on (FB = y) && X86 && EFI
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        help
-         This is the frame buffer device driver for the Intel-based Macintosh
+         This is the EFI frame buffer device driver. If the firmware on
+         your platform is EFI 1.10 or UEFI 2.0, select Y to add support for
+         using the EFI framebuffer as your console.
+
+config FB_N411
+       tristate "N411 Apollo/Hecuba devkit support"
+       depends on FB && X86 && MMU
+       select FB_SYS_FILLRECT
+       select FB_SYS_COPYAREA
+       select FB_SYS_IMAGEBLIT
+       select FB_SYS_FOPS
+       select FB_DEFERRED_IO
+       select FB_HECUBA
+       help
+         This enables support for the Apollo display controller in its
+         Hecuba form using the n411 devkit.
 
 config FB_HGA
        tristate "Hercules mono graphics support"
@@ -615,10 +791,6 @@ config FB_GBE_MEM
          This is the amount of memory reserved for the framebuffer,
          which can be any value between 1MB and 8MB.
 
-config FB_SUN3
-       bool "Sun3 framebuffer support"
-       depends on (FB = y) && (SUN3 || SUN3X) && BROKEN
-
 config FB_SBUS
        bool "SBUS and UPA framebuffers"
        depends on (FB = y) && SPARC
@@ -627,7 +799,7 @@ config FB_SBUS
 
 config FB_BW2
        bool "BWtwo support"
-       depends on (FB = y) && (SPARC && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3)
+       depends on (FB = y) && (SPARC && FB_SBUS)
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -636,7 +808,7 @@ config FB_BW2
 
 config FB_CG3
        bool "CGthree support"
-       depends on (FB = y) && (SPARC && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3)
+       depends on (FB = y) && (SPARC && FB_SBUS)
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -645,13 +817,98 @@ config FB_CG3
 
 config FB_CG6
        bool "CGsix (GX,TurboGX) support"
-       depends on (FB = y) && (SPARC && FB_SBUS || (SUN3 || SUN3X) && FB_SUN3)
+       depends on (FB = y) && (SPARC && FB_SBUS)
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        help
          This is the frame buffer device driver for the CGsix (GX, TurboGX)
          frame buffer.
 
+config FB_FFB
+       bool "Creator/Creator3D/Elite3D support"
+       depends on FB_SBUS && SPARC64
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the frame buffer device driver for the Creator, Creator3D,
+         and Elite3D graphics boards.
+
+config FB_TCX
+       bool "TCX (SS4/SS5 only) support"
+       depends on FB_SBUS
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the frame buffer device driver for the TCX 24/8bit frame
+         buffer.
+
+config FB_CG14
+       bool "CGfourteen (SX) support"
+       depends on FB_SBUS
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the frame buffer device driver for the CGfourteen frame
+         buffer on Desktop SPARCsystems with the SX graphics option.
+
+config FB_P9100
+       bool "P9100 (Sparcbook 3 only) support"
+       depends on FB_SBUS
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the frame buffer device driver for the P9100 card
+         supported on Sparcbook 3 machines.
+
+config FB_LEO
+       bool "Leo (ZX) support"
+       depends on FB_SBUS
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the frame buffer device driver for the SBUS-based Sun ZX
+         (leo) frame buffer cards.
+
+config FB_IGA
+       bool "IGA 168x display support"
+       depends on (FB = y) && SPARC32
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the framebuffer device for the INTERGRAPHICS 1680 and
+         successor frame buffer cards.
+
+config FB_XVR500
+       bool "Sun XVR-500 3DLABS Wildcat support"
+       depends on (FB = y) && PCI && SPARC64
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the framebuffer device for the Sun XVR-500 and similar
+         graphics cards based upon the 3DLABS Wildcat chipset.  The driver
+         only works on sparc64 systems where the system firmware has
+         mostly initialized the card already.  It is treated as a
+         completely dumb framebuffer device.
+
+config FB_XVR2500
+       bool "Sun XVR-2500 3DLABS Wildcat support"
+       depends on (FB = y) && PCI && SPARC64
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the framebuffer device for the Sun XVR-2500 and similar
+         graphics cards based upon the 3DLABS Wildcat chipset.  The driver
+         only works on sparc64 systems where the system firmware has
+         mostly initialized the card already.  It is treated as a
+         completely dumb framebuffer device.
+
 config FB_PVR2
        tristate "NEC PowerVR 2 display support"
        depends on FB && SH_DREAMCAST
@@ -675,7 +932,7 @@ config FB_PVR2
 
 config FB_EPSON1355
        bool "Epson 1355 framebuffer support"
-       depends on (FB = y) && (SUPERH || ARCH_CEIVA)
+       depends on (FB = y) && ARCH_CEIVA
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -696,16 +953,42 @@ config FB_S1D13XXX
          working with S1D13806). Product specs at
          <http://www.erd.epson.com/vdc/html/legacy_13xxx.htm>
 
+config FB_ATMEL
+       tristate "AT91/AT32 LCD Controller support"
+       depends on FB && HAVE_FB_ATMEL
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This enables support for the AT91/AT32 LCD Controller.
+
+config FB_INTSRAM
+       bool "Frame Buffer in internal SRAM"
+       depends on FB_ATMEL && ARCH_AT91SAM9261
+       help
+         Say Y if you want to map Frame Buffer in internal SRAM. Say N if you want
+         to let frame buffer in external SDRAM.
+
+config FB_ATMEL_STN
+       bool "Use a STN display with AT91/AT32 LCD Controller"
+       depends on FB_ATMEL && (MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK)
+       default n
+       help
+         Say Y if you want to connect a STN LCD display to the AT91/AT32 LCD
+         Controller. Say N if you want to connect a TFT.
+
+         If unsure, say N.
+
 config FB_NVIDIA
        tristate "nVidia Framebuffer Support"
        depends on FB && PCI
-       select I2C_ALGOBIT if FB_NVIDIA_I2C
-       select I2C if FB_NVIDIA_I2C
-       select FB_DDC if FB_NVIDIA_I2C
+       select FB_BACKLIGHT if FB_NVIDIA_BACKLIGHT
        select FB_MODE_HELPERS
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select BITREVERSE
+       select VGASTATE
        help
          This driver supports graphics boards with the nVidia chips, TNT
          and newer. For very old chipsets, such as the RIVA128, then use
@@ -718,6 +1001,7 @@ config FB_NVIDIA
 config FB_NVIDIA_I2C
        bool "Enable DDC Support"
        depends on FB_NVIDIA
+       select FB_DDC
        help
          This enables I2C support for nVidia Chipsets.  This is used
          only for getting EDID information from the attached display
@@ -727,10 +1011,18 @@ config FB_NVIDIA_I2C
          independently validate video mode parameters, you should say Y
          here.
 
+config FB_NVIDIA_DEBUG
+       bool "Lots of debug output"
+       depends on FB_NVIDIA
+       default n
+       help
+         Say Y here if you want the nVidia driver to output all sorts
+         of debugging information to provide to the maintainer when
+         something goes wrong.
+
 config FB_NVIDIA_BACKLIGHT
        bool "Support for backlight control"
-       depends on FB_NVIDIA && PMAC_BACKLIGHT
-       select FB_BACKLIGHT
+       depends on FB_NVIDIA
        default y
        help
          Say Y here if you want to control the backlight of your display.
@@ -738,13 +1030,13 @@ config FB_NVIDIA_BACKLIGHT
 config FB_RIVA
        tristate "nVidia Riva support"
        depends on FB && PCI
-       select I2C_ALGOBIT if FB_RIVA_I2C
-       select I2C if FB_RIVA_I2C
-       select FB_DDC if FB_RIVA_I2C
+       select FB_BACKLIGHT if FB_RIVA_BACKLIGHT
        select FB_MODE_HELPERS
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select BITREVERSE
+       select VGASTATE
        help
          This driver supports graphics boards with the nVidia Riva/Geforce
          chips.
@@ -756,6 +1048,7 @@ config FB_RIVA
 config FB_RIVA_I2C
        bool "Enable DDC Support"
        depends on FB_RIVA
+       select FB_DDC
        help
          This enables I2C support for nVidia Chipsets.  This is used
          only for getting EDID information from the attached display
@@ -766,31 +1059,29 @@ config FB_RIVA_I2C
          here.
 
 config FB_RIVA_DEBUG
-       bool "Lots of debug output from Riva(nVidia) driver"
+       bool "Lots of debug output"
        depends on FB_RIVA
        default n
        help
          Say Y here if you want the Riva driver to output all sorts
-         of debugging informations to provide to the maintainer when
+         of debugging information to provide to the maintainer when
          something goes wrong.
 
 config FB_RIVA_BACKLIGHT
        bool "Support for backlight control"
-       depends on FB_RIVA && PMAC_BACKLIGHT
-       select FB_BACKLIGHT
+       depends on FB_RIVA
        default y
        help
          Say Y here if you want to control the backlight of your display.
 
 config FB_I810
        tristate "Intel 810/815 support (EXPERIMENTAL)"
-       depends on FB && EXPERIMENTAL && PCI && X86_32
-       select AGP
-       select AGP_INTEL
+       depends on EXPERIMENTAL && FB && PCI && X86_32 && AGP_INTEL
        select FB_MODE_HELPERS
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select VGASTATE
        help
          This driver supports the on-board graphics built in to the Intel 810 
           and 815 chipsets.  Say Y if you have and plan to use such a board.
@@ -827,33 +1118,40 @@ config FB_I810_GTF
 config FB_I810_I2C
        bool "Enable DDC Support"
        depends on FB_I810 && FB_I810_GTF
-       select I2C
-       select I2C_ALGOBIT
        select FB_DDC
        help
 
+config FB_LE80578
+       tristate "Intel LE80578 (Vermilion) support"
+       depends on FB && PCI && X86
+       select FB_MODE_HELPERS
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This driver supports the LE80578 (Vermilion Range) chipset
+
+config FB_CARILLO_RANCH
+       tristate "Intel Carillo Ranch support"
+       depends on FB_LE80578 && FB && PCI && X86
+       help
+         This driver supports the LE80578 (Carillo Ranch) board
+
 config FB_INTEL
-       tristate "Intel 830M/845G/852GM/855GM/865G/915G/945G support (EXPERIMENTAL)"
-       depends on FB && EXPERIMENTAL && PCI && X86
-       select AGP
-       select AGP_INTEL
-       select I2C_ALGOBIT if FB_INTEL_I2C
-       select I2C if FB_INTEL_I2C
+       tristate "Intel 830M/845G/852GM/855GM/865G/915G/945G/945GM/965G/965GM support (EXPERIMENTAL)"
+       depends on EXPERIMENTAL && FB && PCI && X86 && AGP_INTEL && EMBEDDED
        select FB_MODE_HELPERS
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select FB_BOOT_VESA_SUPPORT if FB_INTEL = y
+       depends on !DRM_I915
        help
          This driver supports the on-board graphics built in to the Intel
-          830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM chipsets.
+          830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM/965G/965GM chipsets.
           Say Y if you have and plan to use such a board.
 
-         If you say Y here and want DDC/I2C support you must first say Y to
-         "I2C support" and "I2C bit-banging support" in the character devices
-         section.
-
-         If you say M here then "I2C support" and "I2C bit-banging support"
-         can be build either as modules or built-in.
+         To make FB_INTELFB=Y work you need to say AGP_INTEL=y too.
 
          To compile this driver as a module, choose M here: the
          module will be called intelfb.
@@ -865,12 +1163,13 @@ config FB_INTEL_DEBUG
        depends on FB_INTEL
        ---help---
          Say Y here if you want the Intel driver to output all sorts
-         of debugging informations to provide to the maintainer when
+         of debugging information to provide to the maintainer when
          something goes wrong.
 
 config FB_INTEL_I2C
        bool "DDC/I2C for Intel framebuffer support"
        depends on FB_INTEL
+       select FB_DDC
        default y
        help
          Say Y here if you want DDC/I2C support for your on-board Intel graphics.
@@ -926,11 +1225,10 @@ config FB_MATROX_G
          pixel and 32 bpp packed pixel. You can also use font widths
          different from 8.
 
-         If you need support for G400 secondary head, you must first say Y to
-         "I2C support" in the character devices section, and then to
-         "Matrox I2C support" and "G400 second head support" here in the
-         framebuffer section. G450/G550 secondary head and digital output
-         are supported without additional modules.
+         If you need support for G400 secondary head, you must say Y to
+         "Matrox I2C support" and "G400 second head support" right below.
+         G450/G550 secondary head and digital output are supported without
+         additional modules.
 
          The driver starts in monitor mode. You must use the matroxset tool 
          (available at <ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/>) to 
@@ -949,8 +1247,8 @@ config FB_MATROX_G
 
 config FB_MATROX_I2C
        tristate "Matrox I2C support"
-       depends on FB_MATROX && I2C
-       select I2C_ALGOBIT
+       depends on FB_MATROX
+       select FB_DDC
        ---help---
          This drivers creates I2C buses which are needed for accessing the
          DDC (I2C) bus present on all Matroxes, an I2C bus which
@@ -995,32 +1293,10 @@ config FB_MATROX_MAVEN
          painting procedures (the secondary head does not use acceleration
          engine).
 
-config FB_MATROX_MULTIHEAD
-       bool "Multihead support"
-       depends on FB_MATROX
-       ---help---
-         Say Y here if you have more than one (supported) Matrox device in
-         your computer and you want to use all of them for different monitors
-         ("multihead"). If you have only one device, you should say N because
-         the driver compiled with Y is larger and a bit slower, especially on
-         ia32 (ix86).
-
-         If you said M to "Matrox unified accelerated driver" and N here, you
-         will still be able to use several Matrox devices simultaneously:
-         insert several instances of the module matroxfb into the kernel
-         with insmod, supplying the parameter "dev=N" where N is 0, 1, etc.
-         for the different Matrox devices. This method is slightly faster but
-         uses 40 KB of kernel memory per Matrox card.
-
-         There is no need for enabling 'Matrox multihead support' if you have
-         only one Matrox card in the box.
-
 config FB_RADEON
        tristate "ATI Radeon display support"
        depends on FB && PCI
-       select I2C_ALGOBIT if FB_RADEON_I2C
-       select I2C if FB_RADEON_I2C
-       select FB_DDC if FB_RADEON_I2C
+       select FB_BACKLIGHT if FB_RADEON_BACKLIGHT
        select FB_MODE_HELPERS
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
@@ -1031,27 +1307,20 @@ config FB_RADEON
          a framebuffer device.  There are both PCI and AGP versions.  You
          don't need to choose this to run the Radeon in plain VGA mode.
 
-         If you say Y here and want DDC/I2C support you must first say Y to
-         "I2C support" and "I2C bit-banging support" in the character devices
-         section.
-
-         If you say M here then "I2C support" and "I2C bit-banging support" 
-         can be build either as modules or built-in.
-
          There is a product page at
          http://apps.ati.com/ATIcompare/
 
 config FB_RADEON_I2C
        bool "DDC/I2C for ATI Radeon support"
        depends on FB_RADEON
+       select FB_DDC
        default y
        help
          Say Y here if you want DDC/I2C support for your Radeon board. 
 
 config FB_RADEON_BACKLIGHT
        bool "Support for backlight control"
-       depends on FB_RADEON && PMAC_BACKLIGHT
-       select FB_BACKLIGHT
+       depends on FB_RADEON
        default y
        help
          Say Y here if you want to control the backlight of your display.
@@ -1062,7 +1331,7 @@ config FB_RADEON_DEBUG
        default n
        help
          Say Y here if you want the Radeon driver to output all sorts
-         of debugging informations to provide to the maintainer when
+         of debugging information to provide to the maintainer when
          something goes wrong.
 
 config FB_ATY128
@@ -1071,6 +1340,7 @@ config FB_ATY128
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select FB_BACKLIGHT if FB_ATY128_BACKLIGHT
        select FB_MACMODES if PPC_PMAC
        help
          This driver supports graphics boards with the ATI Rage128 chips.
@@ -1082,8 +1352,7 @@ config FB_ATY128
 
 config FB_ATY128_BACKLIGHT
        bool "Support for backlight control"
-       depends on FB_ATY128 && PMAC_BACKLIGHT
-       select FB_BACKLIGHT
+       depends on FB_ATY128
        default y
        help
          Say Y here if you want to control the backlight of your display.
@@ -1094,6 +1363,7 @@ config FB_ATY
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select FB_BACKLIGHT if FB_ATY_BACKLIGHT
        select FB_MACMODES if PPC
        help
          This driver supports graphics boards with the ATI Mach64 chips.
@@ -1105,7 +1375,7 @@ config FB_ATY
 config FB_ATY_CT
        bool "Mach64 CT/VT/GT/LT (incl. 3D RAGE) support"
        depends on PCI && FB_ATY
-       default y if SPARC64 && FB_PCI
+       default y if SPARC64 && PCI
        help
          Say Y here to support use of ATI's 64-bit Rage boards (or other
          boards based on the Mach64 CT, VT, GT, and LT chipsets) as a
@@ -1132,28 +1402,32 @@ config FB_ATY_GX
 
 config FB_ATY_BACKLIGHT
        bool "Support for backlight control"
-       depends on FB_ATY && PMAC_BACKLIGHT
-       select FB_BACKLIGHT
+       depends on FB_ATY
        default y
        help
          Say Y here if you want to control the backlight of your display.
 
-config FB_S3TRIO
-       bool "S3 Trio display support"
-       depends on (FB = y) && PPC && BROKEN
-       help
-         If you have a S3 Trio say Y. Say N for S3 Virge.
+config FB_S3
+       tristate "S3 Trio/Virge support"
+       depends on FB && PCI
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       select FB_TILEBLITTING
+       select FB_SVGALIB
+       select VGASTATE
+       select FONT_8x16 if FRAMEBUFFER_CONSOLE
+       ---help---
+         Driver for graphics boards with S3 Trio / S3 Virge chip.
 
 config FB_SAVAGE
        tristate "S3 Savage support"
        depends on FB && PCI && EXPERIMENTAL
-       select I2C_ALGOBIT if FB_SAVAGE_I2C
-       select I2C if FB_SAVAGE_I2C
-       select FB_DDC if FB_SAVAGE_I2C
        select FB_MODE_HELPERS
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select VGASTATE
        help
          This driver supports notebooks and computers with S3 Savage PCI/AGP
          chips.
@@ -1166,6 +1440,7 @@ config FB_SAVAGE
 config FB_SAVAGE_I2C
        bool "Enable DDC2 Support"
        depends on FB_SAVAGE
+       select FB_DDC
        help
          This enables I2C support for S3 Savage Chipsets.  This is used
          only for getting EDID information from the attached display
@@ -1190,6 +1465,7 @@ config FB_SIS
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select FB_BOOT_VESA_SUPPORT if FB_SIS = y
        help
          This is the frame buffer device driver for the SiS 300, 315, 330
          and 340 series as well as XGI V3XT, V5, V8, Z7 graphics chipsets.
@@ -1212,6 +1488,24 @@ config FB_SIS_315
          (315/H/PRO, 55x, 650, 651, 740, 330, 661, 741, 760, 761) as well
          as XGI V3XT, V5, V8 and Z7.
 
+config FB_VIA
+       tristate "VIA UniChrome (Pro) and Chrome9 display support"
+       depends on FB && PCI
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       select FB_SOFT_CURSOR
+       select I2C_ALGOBIT
+       select I2C
+       help
+         This is the frame buffer device driver for Graphics chips of VIA
+         UniChrome (Pro) Family (CLE266,PM800/CN400,P4M800CE/P4M800Pro/
+         CN700/VN800,CX700/VX700,P4M890) and Chrome9 Family (K8M890,CN896
+         /P4M900,VX800)
+         Say Y if you have a VIA UniChrome graphics board.
+
+         To compile this driver as a module, choose M here: the
+         module will be called viafb.
 config FB_NEOMAGIC
        tristate "NeoMagic display support"
        depends on FB && PCI
@@ -1219,6 +1513,7 @@ config FB_NEOMAGIC
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
+       select VGASTATE
        help
          This driver supports notebooks with NeoMagic PCI chips.
          Say Y if you have such a graphics card. 
@@ -1240,25 +1535,34 @@ config FB_KYRO
          module will be called kyrofb.
 
 config FB_3DFX
-       tristate "3Dfx Banshee/Voodoo3 display support"
+       tristate "3Dfx Banshee/Voodoo3/Voodoo5 display support"
        depends on FB && PCI
        select FB_CFB_IMAGEBLIT
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
+       select FB_MODE_HELPERS
        help
-         This driver supports graphics boards with the 3Dfx Banshee/Voodoo3
-         chips. Say Y if you have such a graphics board.
+         This driver supports graphics boards with the 3Dfx Banshee,
+         Voodoo3 or VSA-100 (aka Voodoo4/5) chips. Say Y if you have
+         such a graphics board.
 
          To compile this driver as a module, choose M here: the
          module will be called tdfxfb.
 
 config FB_3DFX_ACCEL
-       bool "3Dfx Banshee/Voodoo3 Acceleration functions (EXPERIMENTAL)"
+       bool "3Dfx Acceleration functions (EXPERIMENTAL)"
        depends on FB_3DFX && EXPERIMENTAL
        ---help---
-       This will compile the 3Dfx Banshee/Voodoo3 frame buffer device
-       with acceleration functions.
+       This will compile the 3Dfx Banshee/Voodoo3/VSA-100 frame buffer
+       device driver with acceleration functions.
 
+config FB_3DFX_I2C
+       bool "Enable DDC/I2C support"
+       depends on FB_3DFX && EXPERIMENTAL
+       select FB_DDC
+       default y
+       help
+         Say Y here if you want DDC/I2C support for your 3dfx Voodoo3.
 
 config FB_VOODOO1
        tristate "3Dfx Voodoo Graphics (sst1) support"
@@ -1275,150 +1579,118 @@ config FB_VOODOO1
 
          WARNING: Do not use any application that uses the 3D engine
          (namely glide) while using this driver.
-         Please read the <file:Documentation/fb/README-sstfb.txt> for supported
+         Please read the <file:Documentation/fb/sstfb.txt> for supported
          options and other important info  support.
 
-config FB_CYBLA
-       tristate "Cyberblade/i1 support"
-       depends on FB && PCI && X86_32 && !64BIT
+config FB_VT8623
+       tristate "VIA VT8623 support"
+       depends on FB && PCI
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
-       select VIDEO_SELECT
+       select FB_TILEBLITTING
+       select FB_SVGALIB
+       select VGASTATE
+       select FONT_8x16 if FRAMEBUFFER_CONSOLE
        ---help---
-         This driver is supposed to support the Trident Cyberblade/i1
-         graphics core integrated in the VIA VT8601A North Bridge,
-         also known as VIA Apollo PLE133.
-
-         Status:
-          - Developed, tested and working on EPIA 5000 and EPIA 800.
-          - Does work reliable on all systems with CRT/LCD connected to
-            normal VGA ports.
-          - Should work on systems that do use the internal LCD port, but
-            this is absolutely not tested.
-
-         Character imageblit, copyarea and rectangle fill are hw accelerated,
-         ypan scrolling is used by default.
-
-         Please do read <file:Documentation/fb/cyblafb/*>.
-
-         To compile this driver as a module, choose M here: the
-         module will be called cyblafb.
+         Driver for CastleRock integrated graphics core in the
+         VIA VT8623 [Apollo CLE266] chipset.
 
 config FB_TRIDENT
-       tristate "Trident support"
+       tristate "Trident/CyberXXX/CyberBlade support"
        depends on FB && PCI
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        ---help---
-         This driver is supposed to support graphics boards with the
-         Trident CyberXXXX/Image/CyberBlade chips mostly found in laptops
-         but also on some motherboards. For more information, read
-         <file:Documentation/fb/tridentfb.txt>
-
-         Cyberblade/i1 support will be removed soon, use the cyblafb driver
-         instead.
+         This is the frame buffer device driver for Trident PCI/AGP chipsets.
+         Supported chipset families are TGUI 9440/96XX, 3DImage, Blade3D
+         and Blade XP.
+         There are also integrated versions of these chips called CyberXXXX,
+         CyberImage or CyberBlade. These chips are mostly found in laptops
+         but also on some motherboards including early VIA EPIA motherboards.
+         For more information, read <file:Documentation/fb/tridentfb.txt>
 
          Say Y if you have such a graphics board.
 
-
          To compile this driver as a module, choose M here: the
          module will be called tridentfb.
 
-config FB_TRIDENT_ACCEL
-       bool "Trident Acceleration functions (EXPERIMENTAL)"
-       depends on FB_TRIDENT && EXPERIMENTAL
+config FB_ARK
+       tristate "ARK 2000PV support"
+       depends on FB && PCI
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       select FB_TILEBLITTING
+       select FB_SVGALIB
+       select VGASTATE
+       select FONT_8x16 if FRAMEBUFFER_CONSOLE
        ---help---
-       This will compile the Trident frame buffer device with
-       acceleration functions.
+         Driver for PCI graphics boards with ARK 2000PV chip
+         and ICS 5342 RAMDAC.
 
 config FB_PM3
-       tristate "Permedia3 support"
-       depends on FB && PCI && BROKEN
+       tristate "Permedia3 support (EXPERIMENTAL)"
+       depends on FB && PCI && EXPERIMENTAL
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
        help
          This is the frame buffer device driver for the 3DLabs Permedia3
          chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 &
          similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000
          and maybe other boards.
 
-config FB_AU1100
-       bool "Au1100 LCD Driver"
-       depends on (FB = y) && EXPERIMENTAL && PCI && MIPS && MIPS_PB1100=y
-
-config FB_AU1200
-       bool "Au1200 LCD Driver"
-       depends on FB && MIPS && SOC_AU1200
+config FB_CARMINE
+       tristate "Fujitsu carmine frame buffer support"
+       depends on FB && PCI
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        help
-         This is the framebuffer driver for the AMD Au1200 SOC.  It can drive
-         various panels and CRTs by passing in kernel cmd line option
-         au1200fb:panel=<name>.
+         This is the frame buffer device driver for the Fujitsu Carmine chip.
+         The driver provides two independent frame buffer devices.
 
-source "drivers/video/geode/Kconfig"
-
-config FB_FFB
-       bool "Creator/Creator3D/Elite3D support"
-       depends on FB_SBUS && SPARC64
-       select FB_CFB_COPYAREA
-       select FB_CFB_IMAGEBLIT
-       help
-         This is the frame buffer device driver for the Creator, Creator3D,
-         and Elite3D graphics boards.
+choice
+       depends on FB_CARMINE
+       prompt "DRAM timing"
+       default FB_CARMINE_DRAM_EVAL
 
-config FB_TCX
-       bool "TCX (SS4/SS5 only) support"
-       depends on FB_SBUS
-       select FB_CFB_FILLRECT
-       select FB_CFB_COPYAREA
-       select FB_CFB_IMAGEBLIT
+config FB_CARMINE_DRAM_EVAL
+       bool "Eval board timings"
        help
-         This is the frame buffer device driver for the TCX 24/8bit frame
-         buffer.
+         Use timings which work on the eval card.
 
-config FB_CG14
-       bool "CGfourteen (SX) support"
-       depends on FB_SBUS
-       select FB_CFB_FILLRECT
-       select FB_CFB_COPYAREA
-       select FB_CFB_IMAGEBLIT
+config CARMINE_DRAM_CUSTOM
+       bool "Custom board timings"
        help
-         This is the frame buffer device driver for the CGfourteen frame
-         buffer on Desktop SPARCsystems with the SX graphics option.
+         Use custom board timings.
+endchoice
 
-config FB_P9100
-       bool "P9100 (Sparcbook 3 only) support"
-       depends on FB_SBUS
+config FB_AU1100
+       bool "Au1100 LCD Driver"
+       depends on (FB = y) && MIPS && SOC_AU1100
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        help
-         This is the frame buffer device driver for the P9100 card
-         supported on Sparcbook 3 machines.
+         This is the framebuffer driver for the AMD Au1100 SOC.  It can drive
+         various panels and CRTs by passing in kernel cmd line option
+         au1100fb:panel=<name>.
 
-config FB_LEO
-       bool "Leo (ZX) support"
-       depends on FB_SBUS
+config FB_AU1200
+       bool "Au1200 LCD Driver"
+       depends on (FB = y) && MIPS && SOC_AU1200
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        help
-         This is the frame buffer device driver for the SBUS-based Sun ZX
-         (leo) frame buffer cards.
-
-config FB_PCI
-       bool "PCI framebuffers"
-       depends on (FB = y) && PCI && SPARC
+         This is the framebuffer driver for the AMD Au1200 SOC.  It can drive
+         various panels and CRTs by passing in kernel cmd line option
+         au1200fb:panel=<name>.
 
-config FB_IGA
-       bool "IGA 168x display support"
-       depends on SPARC32 && FB_PCI
-       select FB_CFB_FILLRECT
-       select FB_CFB_COPYAREA
-       select FB_CFB_IMAGEBLIT
-       help
-         This is the framebuffer device for the INTERGRAPHICS 1680 and
-         successor frame buffer cards.
+source "drivers/video/geode/Kconfig"
 
 config FB_HIT
        tristate "HD64461 Frame Buffer support"
@@ -1441,8 +1713,8 @@ config FB_PMAG_AA
          used mainly in the MIPS-based DECstation series.
 
 config FB_PMAG_BA
-       bool "PMAG-BA TURBOchannel framebuffer support"
-       depends on (FB = y) && TC
+       tristate "PMAG-BA TURBOchannel framebuffer support"
+       depends on FB && TC
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -1451,8 +1723,8 @@ config FB_PMAG_BA
          used mainly in the MIPS-based DECstation series.
 
 config FB_PMAGB_B
-       bool "PMAGB-B TURBOchannel framebuffer support"
-       depends on (FB = y) && TC
+       tristate "PMAGB-B TURBOchannel framebuffer support"
+       depends on FB && TC
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -1472,18 +1744,6 @@ config FB_MAXINE
          DECstation series (Personal DECstation 5000/20, /25, /33, /50,
          Codename "Maxine").
 
-config FB_TX3912
-       bool "TMPTX3912/PR31700 frame buffer support"
-       depends on (FB = y) && NINO
-       select FB_CFB_FILLRECT
-       select FB_CFB_COPYAREA
-       select FB_CFB_IMAGEBLIT
-       help
-         The TX3912 is a Toshiba RISC processor based on the MIPS 3900 core
-         see <http://www.toshiba.com/taec/components/Generic/risc/tx3912.htm>.
-
-         Say Y here to enable kernel support for the on-board framebuffer.
-
 config FB_G364
        bool "G364 frame buffer support"
        depends on (FB = y) && (MIPS_MAGNUM_4000 || OLIVETTI_M700)
@@ -1496,7 +1756,7 @@ config FB_G364
 
 config FB_68328
        bool "Motorola 68328 native frame buffer support"
-       depends on FB && (M68328 || M68EZ328 || M68VZ328)
+       depends on (FB = y) && (M68328 || M68EZ328 || M68VZ328)
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
@@ -1504,6 +1764,16 @@ config FB_68328
          Say Y here if you want to support the built-in frame buffer of
          the Motorola 68328 CPU family.
 
+config FB_PXA168
+       tristate "PXA168/910 LCD framebuffer support"
+       depends on FB && (CPU_PXA168 || CPU_PXA910)
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         Frame buffer driver for the built-in LCD controller in the Marvell
+         MMP processor.
+
 config FB_PXA
        tristate "PXA LCD framebuffer support"
        depends on FB && ARCH_PXA
@@ -1517,10 +1787,20 @@ config FB_PXA
          This driver is also available as a module ( = code which can be
          inserted and removed from the running kernel whenever you want). The
          module will be called pxafb. If you want to compile it as a module,
-         say M here and read <file:Documentation/modules.txt>.
+         say M here and read <file:Documentation/kbuild/modules.txt>.
 
          If unsure, say N.
 
+config FB_PXA_OVERLAY
+       bool "Support PXA27x/PXA3xx Overlay(s) as framebuffer"
+       default n
+       depends on FB_PXA && (PXA27x || PXA3xx)
+
+config FB_PXA_SMARTPANEL
+       bool "PXA Smartpanel LCD support"
+       default n
+       depends on FB_PXA
+
 config FB_PXA_PARAMETERS
        bool "PXA LCD command line parameters"
        default n
@@ -1558,22 +1838,90 @@ config FB_MBX_DEBUG
 
          If unsure, say N.
 
+config FB_FSL_DIU
+       tristate "Freescale DIU framebuffer support"
+       depends on FB && FSL_SOC
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       select PPC_LIB_RHEAP
+       ---help---
+         Framebuffer driver for the Freescale SoC DIU
+
 config FB_W100
        tristate "W100 frame buffer support"
-       depends on FB && PXA_SHARPSL
+       depends on FB && ARCH_PXA
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        ---help---
          Frame buffer driver for the w100 as found on the Sharp SL-Cxx series.
+         It can also drive the w3220 chip found on iPAQ hx4700.
 
          This driver is also available as a module ( = code which can be
          inserted and removed from the running kernel whenever you want). The
          module will be called w100fb. If you want to compile it as a module,
-         say M here and read <file:Documentation/modules.txt>.
+         say M here and read <file:Documentation/kbuild/modules.txt>.
 
          If unsure, say N.
 
+config FB_SH_MOBILE_LCDC
+       tristate "SuperH Mobile LCDC framebuffer support"
+       depends on FB && SUPERH && HAVE_CLK
+       select FB_SYS_FILLRECT
+       select FB_SYS_COPYAREA
+       select FB_SYS_IMAGEBLIT
+       select FB_SYS_FOPS
+       select FB_DEFERRED_IO
+       ---help---
+         Frame buffer driver for the on-chip SH-Mobile LCD controller.
+
+config FB_TMIO
+       tristate "Toshiba Mobile IO FrameBuffer support"
+       depends on FB && MFD_CORE
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         Frame buffer driver for the Toshiba Mobile IO integrated as found
+         on the Sharp SL-6000 series
+
+         This driver is also available as a module ( = code which can be
+         inserted and removed from the running kernel whenever you want). The
+         module will be called tmiofb. If you want to compile it as a module,
+         say M here and read <file:Documentation/kbuild/modules.txt>.
+
+         If unsure, say N.
+
+config FB_TMIO_ACCELL
+       bool "tmiofb acceleration"
+       depends on FB_TMIO
+       default y
+
+config FB_S3C
+       tristate "Samsung S3C framebuffer support"
+       depends on FB && ARCH_S3C64XX
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         Frame buffer driver for the built-in FB controller in the Samsung
+         SoC line from the S3C2443 onwards, including the S3C2416, S3C2450,
+         and the S3C64XX series such as the S3C6400 and S3C6410.
+
+         These chips all have the same basic framebuffer design with the
+         actual capabilities depending on the chip. For instance the S3C6400
+         and S3C6410 support 4 hardware windows whereas the S3C24XX series
+         currently only have two.
+
+         Currently the support is only for the S3C6400 and S3C6410 SoCs.
+
+config FB_S3C_DEBUG_REGWRITE
+       bool "Debug register writes"
+       depends on FB_S3C
+       ---help---
+         Show all register writes via printk(KERN_DEBUG)
+
 config FB_S3C2410
        tristate "S3C2410 LCD framebuffer support"
        depends on FB && ARCH_S3C2410
@@ -1587,7 +1935,7 @@ config FB_S3C2410
          This driver is also available as a module ( = code which can be
          inserted and removed from the running kernel whenever you want). The
          module will be called s3c2410fb. If you want to compile it as a module,
-         say M here and read <file:Documentation/modules.txt>.
+         say M here and read <file:Documentation/kbuild/modules.txt>.
 
          If unsure, say N.
 config FB_S3C2410_DEBUG
@@ -1597,6 +1945,24 @@ config FB_S3C2410_DEBUG
          Turn on debugging messages. Note that you can set/unset at run time
          through sysfs
 
+config FB_SM501
+       tristate "Silicon Motion SM501 framebuffer support"
+       depends on FB && MFD_SM501
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         Frame buffer driver for the CRT and LCD controllers in the Silicon
+         Motion SM501.
+
+         This driver is also available as a module ( = code which can be
+         inserted and removed from the running kernel whenever you want). The
+         module will be called sm501fb. If you want to compile it as a module,
+         say M here and read <file:Documentation/kbuild/modules.txt>.
+
+         If unsure, say N.
+
+
 config FB_PNX4008_DUM
        tristate "Display Update Module support on Philips PNX4008 board"
        depends on FB && ARCH_PNX4008
@@ -1612,13 +1978,86 @@ config FB_PNX4008_DUM_RGB
        ---help---
          Say Y here to enable support for PNX4008 RGB Framebuffer
 
-config FB_VIRTUAL
-       tristate "Virtual Frame Buffer support (ONLY FOR TESTING!)"
-       depends on FB
+config FB_IBM_GXT4500
+       tristate "Framebuffer support for IBM GXT4500P adaptor"
+       depends on FB && PPC
        select FB_CFB_FILLRECT
        select FB_CFB_COPYAREA
        select FB_CFB_IMAGEBLIT
        ---help---
+         Say Y here to enable support for the IBM GXT4500P display
+         adaptor, found on some IBM System P (pSeries) machines.
+
+config FB_PS3
+       tristate "PS3 GPU framebuffer driver"
+       depends on FB && PS3_PS3AV
+       select FB_SYS_FILLRECT
+       select FB_SYS_COPYAREA
+       select FB_SYS_IMAGEBLIT
+       select FB_SYS_FOPS
+       select VT_HW_CONSOLE_BINDING if FRAMEBUFFER_CONSOLE
+       ---help---
+         Include support for the virtual frame buffer in the PS3 platform.
+
+config FB_PS3_DEFAULT_SIZE_M
+       int "PS3 default frame buffer size (in MiB)"
+       depends on FB_PS3
+       default 9
+       ---help---
+         This is the default size (in MiB) of the virtual frame buffer in
+         the PS3.
+         The default value can be overridden on the kernel command line
+         using the "ps3fb" option (e.g. "ps3fb=9M");
+
+config FB_XILINX
+       tristate "Xilinx frame buffer support"
+       depends on FB && (XILINX_VIRTEX || MICROBLAZE)
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         Include support for the Xilinx ML300/ML403 reference design
+         framebuffer. ML300 carries a 640*480 LCD display on the board,
+         ML403 uses a standard DB15 VGA connector.
+
+config FB_COBALT
+       tristate "Cobalt server LCD frame buffer support"
+       depends on FB && MIPS_COBALT
+
+config FB_SH7760
+       bool "SH7760/SH7763/SH7720/SH7721 LCDC support"
+       depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \
+               || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721)
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         Support for the SH7760/SH7763/SH7720/SH7721 integrated
+         (D)STN/TFT LCD Controller.
+         Supports display resolutions up to 1024x1024 pixel, grayscale and
+         color operation, with depths ranging from 1 bpp to 8 bpp monochrome
+         and 8, 15 or 16 bpp color; 90 degrees clockwise display rotation for
+         panels <= 320 pixel horizontal resolution.
+
+config FB_DA8XX
+       tristate "DA8xx/OMAP-L1xx Framebuffer support"
+       depends on FB && ARCH_DAVINCI_DA8XX
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         This is the frame buffer device driver for the TI LCD controller
+         found on DA8xx/OMAP-L1xx SoCs.
+         If unsure, say N.
+
+config FB_VIRTUAL
+       tristate "Virtual Frame Buffer support (ONLY FOR TESTING!)"
+       depends on FB
+       select FB_SYS_FILLRECT
+       select FB_SYS_COPYAREA
+       select FB_SYS_IMAGEBLIT
+       select FB_SYS_FOPS
+       ---help---
          This is a `virtual' frame buffer device. It operates on a chunk of
          unswappable kernel memory instead of on the memory of a graphics
          board. This means you cannot see any output sent to this frame
@@ -1633,6 +2072,119 @@ config FB_VIRTUAL
          the vfb_enable=1 option.
 
          If unsure, say N.
+
+config XEN_FBDEV_FRONTEND
+       tristate "Xen virtual frame buffer support"
+       depends on FB && XEN
+       select FB_SYS_FILLRECT
+       select FB_SYS_COPYAREA
+       select FB_SYS_IMAGEBLIT
+       select FB_SYS_FOPS
+       select FB_DEFERRED_IO
+       select XEN_XENBUS_FRONTEND
+       default y
+       help
+         This driver implements the front-end of the Xen virtual
+         frame buffer driver.  It communicates with a back-end
+         in another domain.
+
+config FB_METRONOME
+       tristate "E-Ink Metronome/8track controller support"
+       depends on FB
+       select FB_SYS_FILLRECT
+       select FB_SYS_COPYAREA
+       select FB_SYS_IMAGEBLIT
+       select FB_SYS_FOPS
+       select FB_DEFERRED_IO
+       help
+         This driver implements support for the E-Ink Metronome
+         controller. The pre-release name for this device was 8track
+         and could also have been called by some vendors as PVI-nnnn.
+
+config FB_MB862XX
+       tristate "Fujitsu MB862xx GDC support"
+       depends on FB
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         Frame buffer driver for Fujitsu Carmine/Coral-P(A)/Lime controllers.
+
+config FB_MB862XX_PCI_GDC
+       bool "Carmine/Coral-P(A) GDC"
+       depends on PCI && FB_MB862XX
+       ---help---
+         This enables framebuffer support for Fujitsu Carmine/Coral-P(A)
+         PCI graphics controller devices.
+
+config FB_MB862XX_LIME
+       bool "Lime GDC"
+       depends on FB_MB862XX
+       depends on OF && !FB_MB862XX_PCI_GDC
+       depends on PPC
+       select FB_FOREIGN_ENDIAN
+       select FB_LITTLE_ENDIAN
+       ---help---
+         Framebuffer support for Fujitsu Lime GDC on host CPU bus.
+
+config FB_EP93XX
+       tristate "EP93XX frame buffer support"
+       depends on FB && ARCH_EP93XX
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       ---help---
+         Framebuffer driver for the Cirrus Logic EP93XX series of processors.
+         This driver is also available as a module. The module will be called
+         ep93xx-fb.
+
+config FB_PRE_INIT_FB
+       bool "Don't reinitialize, use bootloader's GDC/Display configuration"
+       depends on FB && FB_MB862XX_LIME
+       ---help---
+         Select this option if display contents should be inherited as set by
+         the bootloader.
+
+config FB_MSM
+       tristate "MSM Framebuffer support"
+       depends on FB && ARCH_MSM
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       default y
+
+config FB_MX3
+       tristate "MX3 Framebuffer support"
+       depends on FB && MX3_IPU
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       default y
+       help
+         This is a framebuffer device for the i.MX31 LCD Controller. So
+         far only synchronous displays are supported. If you plan to use
+         an LCD display with your i.MX31 system, say Y here.
+
+config FB_BROADSHEET
+       tristate "E-Ink Broadsheet/Epson S1D13521 controller support"
+       depends on FB
+       select FB_SYS_FILLRECT
+       select FB_SYS_COPYAREA
+       select FB_SYS_IMAGEBLIT
+       select FB_SYS_FOPS
+       select FB_DEFERRED_IO
+       help
+         This driver implements support for the E-Ink Broadsheet
+         controller. The release name for this device was Epson S1D13521
+         and could also have been called by other names when coupled with
+         a bridge adapter.
+
+source "drivers/video/omap/Kconfig"
+source "drivers/video/omap2/Kconfig"
+
+source "drivers/video/backlight/Kconfig"
+source "drivers/video/display/Kconfig"
+
 if VT
        source "drivers/video/console/Kconfig"
 endif
@@ -1641,9 +2193,4 @@ if FB || SGI_NEWPORT_CONSOLE
        source "drivers/video/logo/Kconfig"
 endif
 
-if SYSFS
-       source "drivers/video/backlight/Kconfig"
-endif
-
 endmenu
-