xref: /openbmc/linux/Documentation/fb/s3fb.rst (revision 0898782247ae533d1f4e47a06bc5d4870931b284)
1*ab42b818SMauro Carvalho Chehab===========================================
2*ab42b818SMauro Carvalho Chehabs3fb - fbdev driver for S3 Trio/Virge chips
3*ab42b818SMauro Carvalho Chehab===========================================
4*ab42b818SMauro Carvalho Chehab
5*ab42b818SMauro Carvalho Chehab
6*ab42b818SMauro Carvalho ChehabSupported Hardware
7*ab42b818SMauro Carvalho Chehab==================
8*ab42b818SMauro Carvalho Chehab
9*ab42b818SMauro Carvalho Chehab	S3 Trio32
10*ab42b818SMauro Carvalho Chehab	S3 Trio64 (and variants V+, UV+, V2/DX, V2/GX)
11*ab42b818SMauro Carvalho Chehab	S3 Virge  (and variants VX, DX, GX and GX2+)
12*ab42b818SMauro Carvalho Chehab	S3 Plato/PX		(completely untested)
13*ab42b818SMauro Carvalho Chehab	S3 Aurora64V+		(completely untested)
14*ab42b818SMauro Carvalho Chehab
15*ab42b818SMauro Carvalho Chehab	- only PCI bus supported
16*ab42b818SMauro Carvalho Chehab	- only BIOS initialized VGA devices supported
17*ab42b818SMauro Carvalho Chehab	- probably not working on big endian
18*ab42b818SMauro Carvalho Chehab
19*ab42b818SMauro Carvalho ChehabI tested s3fb on Trio64 (plain, V+ and V2/DX) and Virge (plain, VX, DX),
20*ab42b818SMauro Carvalho Chehaball on i386.
21*ab42b818SMauro Carvalho Chehab
22*ab42b818SMauro Carvalho Chehab
23*ab42b818SMauro Carvalho ChehabSupported Features
24*ab42b818SMauro Carvalho Chehab==================
25*ab42b818SMauro Carvalho Chehab
26*ab42b818SMauro Carvalho Chehab	*  4 bpp pseudocolor modes (with 18bit palette, two variants)
27*ab42b818SMauro Carvalho Chehab	*  8 bpp pseudocolor mode (with 18bit palette)
28*ab42b818SMauro Carvalho Chehab	* 16 bpp truecolor modes (RGB 555 and RGB 565)
29*ab42b818SMauro Carvalho Chehab	* 24 bpp truecolor mode (RGB 888) on (only on Virge VX)
30*ab42b818SMauro Carvalho Chehab	* 32 bpp truecolor mode (RGB 888) on (not on Virge VX)
31*ab42b818SMauro Carvalho Chehab	* text mode (activated by bpp = 0)
32*ab42b818SMauro Carvalho Chehab	* interlaced mode variant (not available in text mode)
33*ab42b818SMauro Carvalho Chehab	* doublescan mode variant (not available in text mode)
34*ab42b818SMauro Carvalho Chehab	* panning in both directions
35*ab42b818SMauro Carvalho Chehab	* suspend/resume support
36*ab42b818SMauro Carvalho Chehab	* DPMS support
37*ab42b818SMauro Carvalho Chehab
38*ab42b818SMauro Carvalho ChehabText mode is supported even in higher resolutions, but there is limitation to
39*ab42b818SMauro Carvalho Chehablower pixclocks (maximum usually between 50-60 MHz, depending on specific
40*ab42b818SMauro Carvalho Chehabhardware, i get best results from plain S3 Trio32 card - about 75 MHz). This
41*ab42b818SMauro Carvalho Chehablimitation is not enforced by driver. Text mode supports 8bit wide fonts only
42*ab42b818SMauro Carvalho Chehab(hardware limitation) and 16bit tall fonts (driver limitation). Text mode
43*ab42b818SMauro Carvalho Chehabsupport is broken on S3 Trio64 V2/DX.
44*ab42b818SMauro Carvalho Chehab
45*ab42b818SMauro Carvalho ChehabThere are two 4 bpp modes. First mode (selected if nonstd == 0) is mode with
46*ab42b818SMauro Carvalho Chehabpacked pixels, high nibble first. Second mode (selected if nonstd == 1) is mode
47*ab42b818SMauro Carvalho Chehabwith interleaved planes (1 byte interleave), MSB first. Both modes support
48*ab42b818SMauro Carvalho Chehab8bit wide fonts only (driver limitation).
49*ab42b818SMauro Carvalho Chehab
50*ab42b818SMauro Carvalho ChehabSuspend/resume works on systems that initialize video card during resume and
51*ab42b818SMauro Carvalho Chehabif device is active (for example used by fbcon).
52*ab42b818SMauro Carvalho Chehab
53*ab42b818SMauro Carvalho Chehab
54*ab42b818SMauro Carvalho ChehabMissing Features
55*ab42b818SMauro Carvalho Chehab================
56*ab42b818SMauro Carvalho Chehab(alias TODO list)
57*ab42b818SMauro Carvalho Chehab
58*ab42b818SMauro Carvalho Chehab	* secondary (not initialized by BIOS) device support
59*ab42b818SMauro Carvalho Chehab	* big endian support
60*ab42b818SMauro Carvalho Chehab	* Zorro bus support
61*ab42b818SMauro Carvalho Chehab	* MMIO support
62*ab42b818SMauro Carvalho Chehab	* 24 bpp mode support on more cards
63*ab42b818SMauro Carvalho Chehab	* support for fontwidths != 8 in 4 bpp modes
64*ab42b818SMauro Carvalho Chehab	* support for fontheight != 16 in text mode
65*ab42b818SMauro Carvalho Chehab	* composite and external sync (is anyone able to test this?)
66*ab42b818SMauro Carvalho Chehab	* hardware cursor
67*ab42b818SMauro Carvalho Chehab	* video overlay support
68*ab42b818SMauro Carvalho Chehab	* vsync synchronization
69*ab42b818SMauro Carvalho Chehab	* feature connector support
70*ab42b818SMauro Carvalho Chehab	* acceleration support (8514-like 2D, Virge 3D, busmaster transfers)
71*ab42b818SMauro Carvalho Chehab	* better values for some magic registers (performance issues)
72*ab42b818SMauro Carvalho Chehab
73*ab42b818SMauro Carvalho Chehab
74*ab42b818SMauro Carvalho ChehabKnown bugs
75*ab42b818SMauro Carvalho Chehab==========
76*ab42b818SMauro Carvalho Chehab
77*ab42b818SMauro Carvalho Chehab	* cursor disable in text mode doesn't work
78*ab42b818SMauro Carvalho Chehab	* text mode broken on S3 Trio64 V2/DX
79*ab42b818SMauro Carvalho Chehab
80*ab42b818SMauro Carvalho Chehab
81*ab42b818SMauro Carvalho Chehab--
82*ab42b818SMauro Carvalho ChehabOndrej Zajicek <santiago@crfreenet.org>
83