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