Merge branch 'work.dcache2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[platform/kernel/linux-starfive.git] / Documentation / fb / tridentfb.rst
1 =========
2 Tridentfb
3 =========
4
5 Tridentfb is a framebuffer driver for some Trident chip based cards.
6
7 The following list of chips is thought to be supported although not all are
8 tested:
9
10 those from the TGUI series 9440/96XX and with Cyber in their names
11 those from the Image series and with Cyber in their names
12 those with Blade in their names (Blade3D,CyberBlade...)
13 the newer CyberBladeXP family
14
15 All families are accelerated. Only PCI/AGP based cards are supported,
16 none of the older Tridents.
17 The driver supports 8, 16 and 32 bits per pixel depths.
18 The TGUI family requires a line length to be power of 2 if acceleration
19 is enabled. This means that range of possible resolutions and bpp is
20 limited comparing to the range if acceleration is disabled (see list
21 of parameters below).
22
23 Known bugs:
24
25 1. The driver randomly locks up on 3DImage975 chip with acceleration
26    enabled. The same happens in X11 (Xorg).
27 2. The ramdac speeds require some more fine tuning. It is possible to
28    switch resolution which the chip does not support at some depths for
29    older chips.
30
31 How to use it?
32 ==============
33
34 When booting you can pass the video parameter::
35
36         video=tridentfb
37
38 The parameters for tridentfb are concatenated with a ':' as in this example::
39
40         video=tridentfb:800x600-16@75,noaccel
41
42 The second level parameters that tridentfb understands are:
43
44 ========  =====================================================================
45 noaccel   turns off acceleration (when it doesn't work for your card)
46
47 fp        use flat panel related stuff
48 crt       assume monitor is present instead of fp
49
50 center    for flat panels and resolutions smaller than native size center the
51           image, otherwise use
52 stretch
53
54 memsize   integer value in KB, use if your card's memory size is misdetected.
55           look at the driver output to see what it says when initializing.
56
57 memdiff   integer value in KB, should be nonzero if your card reports
58           more memory than it actually has. For instance mine is 192K less than
59           detection says in all three BIOS selectable situations 2M, 4M, 8M.
60           Only use if your video memory is taken from main memory hence of
61           configurable size. Otherwise use memsize.
62           If in some modes which barely fit the memory you see garbage
63           at the bottom this might help by not letting change to that mode
64           anymore.
65
66 nativex   the width in pixels of the flat panel.If you know it (usually 1024
67           800 or 1280) and it is not what the driver seems to detect use it.
68
69 bpp       bits per pixel (8,16 or 32)
70 mode      a mode name like 800x600-8@75 as described in
71           Documentation/fb/modedb.rst
72 ========  =====================================================================
73
74 Using insane values for the above parameters will probably result in driver
75 misbehaviour so take care(for instance memsize=12345678 or memdiff=23784 or
76 nativex=93)
77
78 Contact: jani@astechnix.ro