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