diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
commit | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch) | |
tree | 0bba044c4ce775e45a88a51686b5d9f90697ea9d /Documentation/fb/sstfb.txt |
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.
Let it rip!
Diffstat (limited to 'Documentation/fb/sstfb.txt')
-rw-r--r-- | Documentation/fb/sstfb.txt | 174 |
1 files changed, 174 insertions, 0 deletions
diff --git a/Documentation/fb/sstfb.txt b/Documentation/fb/sstfb.txt new file mode 100644 index 000000000000..628d7ffa8769 --- /dev/null +++ b/Documentation/fb/sstfb.txt | |||
@@ -0,0 +1,174 @@ | |||
1 | |||
2 | Introduction | ||
3 | |||
4 | This is a frame buffer device driver for 3dfx' Voodoo Graphics | ||
5 | (aka voodoo 1, aka sst1) and VoodooČ (aka Voodoo 2, aka CVG) based | ||
6 | video boards. It's highly experimental code, but is guaranteed to work | ||
7 | on my computer, with my "Maxi Gamer 3D" and "Maxi Gamer 3dČ" boards, | ||
8 | and with me "between chair and keyboard". Some people tested other | ||
9 | combinations and it seems that it works. | ||
10 | The main page is located at <http://sstfb.sourceforge.net>, and if | ||
11 | you want the latest version, check out the CVS, as the driver is a work | ||
12 | in progress, I feel uncomfortable with releasing tarballs of something | ||
13 | not completely working...Don't worry, it's still more than useable | ||
14 | (I eat my own dog food) | ||
15 | |||
16 | Please read the Bug section, and report any success or failure to me | ||
17 | (Ghozlane Toumi <gtoumi@laposte.net>). | ||
18 | BTW, If you have only one monitor , and you don't feel like playing | ||
19 | with the vga passthrou cable, I can only suggest borrowing a screen | ||
20 | somewhere... | ||
21 | |||
22 | |||
23 | Installation | ||
24 | |||
25 | This driver (should) work on ix86, with "late" 2.2.x kernel (tested | ||
26 | with x = 19) and "recent" 2.4.x kernel, as a module or compiled in. | ||
27 | It has been included in mainstream kernel since the infamous 2.4.10. | ||
28 | You can apply the patches found in sstfb/kernel/*-2.{2|4}.x.patch, | ||
29 | and copy sstfb.c to linux/drivers/video/, or apply a single patch, | ||
30 | sstfb/patch-2.{2|4}.x-sstfb-yymmdd to your linux source tree. | ||
31 | |||
32 | Then configure your kernel as usual: choose "m" or "y" to 3Dfx Voodoo | ||
33 | Graphics in section "console". Compile, install, have fun... and please | ||
34 | drop me a report :) | ||
35 | |||
36 | |||
37 | Module Usage | ||
38 | |||
39 | Warnings. | ||
40 | # You should read completely this section before issuing any command. | ||
41 | # If you have only one monitor to play with, once you insmod the | ||
42 | module, the 3dfx takes control of the output, so you'll have to | ||
43 | plug the monitor to the "normal" video board in order to issue | ||
44 | the commands, or you can blindly use sst_dbg_vgapass | ||
45 | in the tools directory (See Tools). The latest solution is pass the | ||
46 | parameter vgapass=1 when insmodding the driver. (See Kernel/Modules | ||
47 | Options) | ||
48 | |||
49 | Module insertion: | ||
50 | # insmod sstfb.o | ||
51 | you should see some strange output frome the board: | ||
52 | a big blue square, a green and a red small squares and a vertical | ||
53 | white rectangle. why ? the function's name is self explanatory : | ||
54 | "sstfb_test()"... | ||
55 | (if you don't have a second monitor, you'll have to plug your monitor | ||
56 | directely to the 2D videocard to see what you're typing) | ||
57 | # con2fb /dev/fbx /dev/ttyx | ||
58 | bind a tty to the new frame buffer. if you already have a frame | ||
59 | buffer driver, the voodoo fb will likely be /dev/fb1. if not, | ||
60 | the device will be /dev/fb0. You can check this by doing a | ||
61 | cat /proc/fb. You can find a copy of con2fb in tools/ directory. | ||
62 | if you don't have another fb device, this step is superfluous, | ||
63 | as the console subsystem automagicaly binds ttys to the fb. | ||
64 | # switch to the virtual console you just mapped. "tadaaa" ... | ||
65 | |||
66 | Module removal: | ||
67 | # con2fb /dev/fbx /dev/ttyx | ||
68 | bind the tty to the old frame buffer so the module can be removed. | ||
69 | (how does it work with vgacon ? short answer : it doesn't work) | ||
70 | # rmmod sstfb | ||
71 | |||
72 | |||
73 | Kernel/Modules Options | ||
74 | |||
75 | You can pass some otions to sstfb module, and via the kernel command | ||
76 | line when the driver is compiled in : | ||
77 | for module : insmod sstfb.o option1=value1 option2=value2 ... | ||
78 | in kernel : video=sstfb:option1,option2:value2,option3 ... | ||
79 | |||
80 | sstfb supports the folowing options : | ||
81 | |||
82 | Module Kernel Description | ||
83 | |||
84 | vgapass=0 vganopass Enable or disable VGA passthrou cable. | ||
85 | vgapass=1 vgapass When enabled, the monitor will get the signal | ||
86 | from the VGA board and not from the voodoo. | ||
87 | Default: nopass | ||
88 | |||
89 | mem=x mem:x Force frame buffer memory in MiB | ||
90 | allowed values: 0, 1, 2, 4. | ||
91 | Default: 0 (= autodetect) | ||
92 | |||
93 | inverse=1 inverse Supposed to enable inverse console. | ||
94 | doesn't work yet... | ||
95 | |||
96 | clipping=1 clipping Enable or disable clipping. | ||
97 | clipping=0 noclipping With clipping enabled, all offscreen | ||
98 | reads and writes are disgarded. | ||
99 | Default: enable clipping. | ||
100 | |||
101 | gfxclk=x gfxclk:x Force graphic clock frequency (in MHz). | ||
102 | Be carefull with this option, it may be | ||
103 | DANGEROUS. | ||
104 | Default: auto | ||
105 | 50Mhz for Voodoo 1, | ||
106 | 75MHz for Voodoo 2. | ||
107 | |||
108 | slowpci=1 fastpci Enable or disable fast PCI read/writes. | ||
109 | slowpci=1 slowpci Default : fastpci | ||
110 | |||
111 | dev=x dev:x Attach the driver to device number x. | ||
112 | 0 is the first compatible board (in | ||
113 | lspci order) | ||
114 | |||
115 | Tools | ||
116 | |||
117 | These tools are mostly for debugging purposes, but you can | ||
118 | find some of these interesting : | ||
119 | - con2fb , maps a tty to a fbramebuffer . | ||
120 | con2fb /dev/fb1 /dev/tty5 | ||
121 | - sst_dbg_vgapass , changes vga passthrou. You have to recompile the | ||
122 | driver with SST_DEBUG and SST_DEBUG_IOCTL set to 1 | ||
123 | sst_dbg_vgapass /dev/fb1 1 (enables vga cable) | ||
124 | sst_dbg_vgapass /dev/fb1 0 (disables vga cable) | ||
125 | - glide_reset , resets the voodoo using glide | ||
126 | use this after rmmoding sstfb, if the module refuses to | ||
127 | reinsert . | ||
128 | |||
129 | Bugs | ||
130 | |||
131 | - DO NOT use glide while the sstfb module is in, you'll most likely | ||
132 | hang your computer. | ||
133 | - If you see some artefacts (pixels not cleaning and stuff like that), | ||
134 | try turning off clipping (clipping=0), and/or using slowpci | ||
135 | - the driver don't detect the 4Mb frame buffer voodoos, it seems that | ||
136 | the 2 last Mbs wrap around. looking into that . | ||
137 | - The driver is 16 bpp only, 24/32 won't work. | ||
138 | - The driver is not your_favorite_toy-safe. this includes SMP... | ||
139 | [Actually from inspection it seems to be safe - Alan] | ||
140 | - when using XFree86 FBdev (X over fbdev) you may see strange color | ||
141 | patterns at the border of your windows (the pixels lose the lowest | ||
142 | byte -> basicaly the blue component nd some of the green) . I'm unable | ||
143 | to reproduce this with XFree86-3.3, but one of the testers has this | ||
144 | problem with XFree86-4. apparently recent Xfree86-4.x solve this | ||
145 | problem. | ||
146 | - I didn't really test changing the palette, so you may find some weird | ||
147 | things when playing with that. | ||
148 | - Sometimes the driver will not recognise the DAC , and the | ||
149 | initialisation will fail. this is specificaly true for | ||
150 | voodoo 2 boards , but it should be solved in recent versions. please | ||
151 | contact me . | ||
152 | - the 24/32 is not likely to work anytime soon , knowing that the | ||
153 | hardware does ... unusual thigs in 24/32 bpp | ||
154 | - When used with anther video board, current limitations of linux | ||
155 | console subsystem can cause some troubles, specificaly, you should | ||
156 | disable software scrollback , as it can oops badly ... | ||
157 | |||
158 | Todo | ||
159 | |||
160 | - Get rid of the previous paragraph. | ||
161 | - Buy more coffee. | ||
162 | - test/port to other arch. | ||
163 | - try to add panning using tweeks with front and back buffer . | ||
164 | - try to implement accel on voodoo2 , this board can actualy do a | ||
165 | lot in 2D even if it was sold as a 3D only board ... | ||
166 | |||
167 | ghoz. | ||
168 | |||
169 | -- | ||
170 | Ghozlane Toumi <gtoumi@laposte.net> | ||
171 | |||
172 | |||
173 | $Date: 2002/05/09 20:11:45 $ | ||
174 | http://sstfb.sourceforge.net/README | ||