About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / fb / sstfb.txt




Custom Search

Based on kernel version 3.15.4. Page generated on 2014-07-07 09:02 EST.

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 from 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		  directly 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 options to the sstfb module, and via the kernel 
76		command 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 following 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 discarded.
99					Default: enable clipping.
100	
101	gfxclk=x	gfxclk:x	Force graphic clock frequency (in MHz).
102					Be careful 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 -> basically the blue component and 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 specifically 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 things in 24/32 bpp.
154		- When used with another video board, current limitations of the linux
155		console subsystem can cause some troubles, specifically, 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 actually 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
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.