Newbie questions about driver programming and s3 968 docs.

Martijn Uffing mp3project at sarijopen.student.utwente.nl
Thu Mar 9 12:35:05 PST 2006


Ave people


I've got a Diamond Stealth 64 VRAM card with a s3 968 graphics chip and a 
TI Viewpoint 3026 Ramdac. This card doesn't work in Xorg because there's 
support for the s3 968, there's support for the TI 3026 Ramdac, but 
there's no support for the combination ....... yet. This is an old 
card so the chance that somebody will fix it is very small. Therefore in 
the open source spirit, I'll give it a try myself :)

However since I didn't even know what a ramdac was a week ago, I've got 
some newbie questions.


1)The 3026 ramdac is supported in the mga driver. The s3 968 is supported 
in the s3 driver, but with a 3025 ramdac.

Does it matter for graphic chip programming which ramdac is connected? In 
other words: If I can get the 3026 working, will the 968/3026 combo just 
work(TM). Or do I also have to make changes in the s3 driver, beyond 
letting the s3 driver also probing for a 3026 ramdac and setting the 
pS3->DacPreInit/pS3->DacInit etc etc functions?


2)The 3026 ramdac is supported in the mga driver. However there's also a 
generic ramdac module which has support for the 3026. Which one is the 
best to look at for guidance?
At this moment, I'm trying to duplicate the S3TiDAC(which are for the 
3025) functions with S3TiDac_3026 equivalents.



3)I've got docs for the 3025/3026. (kuddos to Texas Instruments for 
keeping docs online for long obsolete products!). I couldn't find docs 
for the s3 968. Of course I can look into the source of the XFree3/Xorg4 
drivers, and just copy paste some stuff.  But I would rather now WHAT the 
driver is doing by poking some registers. Especially how to reach the 
direct registers of the ramdac. 

Example:
The s3 driver is doing stuff like
outb(vgaCRIndex, 0x43);
However I can't find the meaning of what's to be found at that  indirect 
register 0x43 at http://www.osdever.net/FreeVGA/vga/crtcreg.htm

Is this register typical for the s3?  Or is there a better vga reference 
on the net where I can find the meaning for those registers?
Are the s3 968 docs somewhere on the net? 

4) IF and only IF I can get it working.
Should I sent patches to the list or make a bugzilla entry with 
attachments?


Greetz Mu

P.S: I had a lot of respect for people who made drivers for hardware with 
no docs and no source by reverse engineering.  Now that I'm trying to fix 
a driver for which most work is done, docs available and a working 
open source example (XFree3) is also available, my respect for them has 
grown to humongous proportions!















More information about the xorg mailing list