Port-sparc64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Graphics hardware support on sparc64



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

On Nov 22, 2007, at 15:30, Volker A. Brandt wrote:

It would be good if you could (maybe periodically) a small
table of existing cards and their support status.  I might have
some time for testing over Christmas, and I have a pile of cards.
Most of them are SBus and horizontal and vertical UPA but some PCI.

Since I just ran into this and have a few minutes to spare here we go:

1. UPA cards
All UPA cards should work as console ( with the ffb driver ) and in X ( with the sunffb driver ). Elite3D cards need an extra step - you need to upload a firmware image into the card using the afbinit utility from pkgsrc and a firmware file from Solaris ( we're not allowed to ship it, mails to Sun asking about it haven't been answered for years ) The two most annoying, long-standing bugs have been fixed, namely VRAM corruption after blanking on ffb1 boards and occasional greenish- bluish artifacts during alpha-blending operations on ffb2 or newer.

2. SBus cards
All cg6 variants should Just Work(tm), both as console ( cgsix at sbus ) and in X ( using the suncg6 driver ). The Fujitsu AG-10e should work but is untested since I don't have a 64bit SBus machine with two SBus slots close enough together for this card to fit. The kernel driver was compile-tested only, same about the X driver. Since the X driver conflicts with the glint driver it's not built by default, I need to resolve this at some point by renaming a bunch of functions or making them static. Chances are it would just work. Other SBus cards are untested at best and not very common in sparc64 hardware anyway, except maybe the ZX. We have a kernel driver for it but it doesn't support wscons and X probably won't work at all. Genfb at sbus might work but there are numerous problems, for instance programming palette registers works only on a handful cards if at all, many SBus cards use non-standard firmware properties ( like the AG-10e ) and we have native drivers for the SBus graphics chips I could test with genfb anyway. If you have an unsupported SBus graphics card in a sparc64 box please try it with genfb but don't hold your breath. Colours will likely be off but otherwise it should work if the firmware isn't too quirky.

3. PCI cards
The PGX and PGX24 ( using Rage II and Pro chips ) work as console ( mach64 at pci ) and in X ( atimisc driver ). The PGX64 uses the Rage XL and should work but there have been problem reports which I can't do anything about for lack of hardware. The PGX32, basically a rebadged TechSource Raptor GFX 8P, which in tun is basically a Permedia2 with sun-firmware and a bunch of jumpers, works both as console ( genfb at pci, unaccelerated but works ) and in X ( accelerated, using the glint driver ). These cards have varying degrees of firmware screwiness which can be worked around though: - - the OF calls for changing palette registers don't work so either run the card in 32bit or live with screwed up colours in the console. This doesn't affect X at all - - we found two different bugs regarding OpenFirmware properties which we currently have workarounds for. If you have a PGX32 or Raptor 8P and genfb's output looks messed up you likely have yet another firmware bug. In this case please mail me the ofctl -p output and I'll implement yet another workaround. Radeon-based cards like the XVR-100 should work with radeonfb or genfb but they're untested for lack of hardware. X should support them with the radeon driver. Higher end Sun graphics boards like the XVR-500 use variants of the 3Dlab Wildcat chipset. They should work as console with the genfb driver but X likely doesn't support them. Your best bet is to play with the glint driver, these chips might be similar enough to get something to work. Otherwise try the wsfb driver, it should work but is unaccelerated. Some Tadpole laptops use an ATI Rage 128 graphics controller. We have an accelerated driver for it ( r128fb at pci ) but it's been tested on macppc only and will need some trivial hacking to attach ( there are dozens of Rage 128 variants and so far it attaches only to the one I have here because I have no idea what exactly the differences between those models are and how to deal with them. I wish ATI/AMD would release docs for older chips as well. ). Genfb should work and so should X with the r128 driver.

That's it for now, we should have the most common cards supported. All console and X drivers except genfb and wsfb use hardware acceleration. We don't support any kind of 3D acceleration yet.

Also, all X drivers except wsfb will configure automatically with X - configure.

Graphics cards without Sun firmware will NOT work. We need the firmware to set them up as console and currently X doesn't support PCI devices as secondary heads. It does support SBus and UPA cards as secondary heads though, so if you want to use both the onboard Rage II/Pro and a Creator 3D in - say - an U10 you need to set the console to the Rage and X should see both graphics chips.

As always, if you think I forgot something please tell me.

If you have hardware you want supported send me a card and I'll see what I can do - so far I managed to get every single graphics device I got my hands on to work. I still need to write a console driver for the PGX32 but X works with acceleration which is probably what counts to most people ;) Other TechSource cards might be easiest to support since they tend to use off-the-shelf graphics chips with their own Sun-compatible firmware.

Also, I don't know which 64bit Sun machines would have two SBus slots right next to each other ( like the SS20 does ) - on the U1 they're too far apart so the AG-10e doesn't fit. I suspect it might fit in the U2. So, if anyone wants this to work I need an U2 :)

have fun
Michael

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)

iQEVAwUBSAyWN8pnzkX8Yg2nAQKPhggAsxFuLK8YV8SJ1+cQI+++W8ILe4g0Un9P
JqbWBv5giDNxBjqNFvUuGwQdQ5uNrcLELmBbXFWLgCh2C5lSrxhDu5Be+izPYo/k
4DMwkuL/ublvSAF08wF07GWxopReJ4a4fulylNJ0y+Ly0d7uoc37uFd+DzoLTi5j
ERT6YgmLV0EpMXjlfH4hLurBv2PnpKnYRNKN9ASRgZ9EghOegO/Ba3c7LsEqAc9I
pS6uW+Vfd3ElYdGp2Rtx8r5QU+LcBoT6bhIf/fWkvJhBbEo/CETp4/znREcsZOba
Y7ffICCv4wCBAmIj1AiqhKgXXD7qKw0uyzcYSrHvtF2pH01R7OoirA==
=TOe8
-----END PGP SIGNATURE-----


Home | Main Index | Thread Index | Old Index