[July 14 status update : glxgears buffer aging problem found & fixed, texture code pushed but not sure of status. Buffer swap (back to front copy) being done on CPU rather than GPU so glxgears gives ~15fps rather than ~1500. Most testing is being done on rv730/770; there were a few color problems on 6xx and RS780 last time I looked, probably still there for now. See Alex's blog entry for more details - www.botchco.com/agd5f/]
The 6xx/7xx 3D driver is starting to do useful things again after moving over to the radeon-rewrite mesa code base. As of last night, it seems to be behaving properly on 14 of the 63 tests in progs/redbook, drawing incorrectly on 24, and either not drawing or crashing on the remaining 25. Cooper found that the following tests rendered correctly :
hello, plane, torus, list, aargb, smooth, tess, varray, tesswind, model, anti, bezcurve, picksquare, and cube.
The driver currently segfaults after running ~10 frames of glxgears - Richard is looking into that. Alex is hooking up the texture code to the new bufmgr code, and Cooper is going through the redbook tests and picking off problems as he finds them. Development and testing are primarily being done on discrete graphics cards; not sure of the current status on 760/780/790 IGP parts.
The r6xx-rewrite branch was synced up with mesa master recently, so merging it into master should be fairly straightforward. A bigger question is how and when we decide that the API to the drm is not likely to require further changes, ie when it makes sense to ask to merge the new drm ioctl support into the main kernel tree. The changes are relatively small and the chance of breaking any *other* support is extremely low, so maybe there's a chance of making 2.6.31 but we haven't had that discussion yet AFAIK.
If you want to try the latest code (with the caveat that it is *not* ready for general use), you want the r6xx-rewrite of mesa/mesa, and the r6xx-r7xx-3d branch of ~agd5f/drm. The drm code works with 2.6.28 and earlier, but has problems with 2.6.29 and higher.
- 3D support for ATI 6xx/7xx update

Branches
2009-07-02 10:28 pm (UTC)
Should you build the DRM module from you drm tree?
Are there any special branches of anything else?
Cheers
Mike
Re: Branches
2009-07-03 01:05 am (UTC)
You will need a fairly recent X driver; radeon from git master definitely works and I think radeonhd has the required changes as well.
Re: Branches
2009-07-03 07:35 pm (UTC)
I also have to turn off r200 to get the mesa branch to compile, I'm not sure if this is a recent regression or due to the new libdrm
Will give you an update when I reboot
Re: Branches
2009-07-03 08:00 pm (UTC)
The strange thing is X kept restarting, however loading a newer kernel using a built in radeon module stopped the crashing
I'm going to switch back to my X1250 and text the KMS stuff now
I'm looking forward to this maturing, keep up the good work
performance?
2009-07-03 10:59 am (UTC)
Re: performance?
2009-07-04 03:01 am (UTC)
In other words we don't really know yet :D
Re: performance?
2009-07-04 01:02 pm (UTC)
Other OS?
2009-07-04 10:47 am (UTC)
Re: Other OS?
2009-07-04 03:44 pm (UTC)
There seems to be a fair amount of effort going on to keep FreeBSD up to date, but OpenSolaris work has focused on just the userspace X driver so far (ie modesetting + shadowfb).
Updated build instructions
2009-07-20 07:41 pm (UTC)
++++++++++++++++++++++++++++++++++++++++
Building libdrm and radeon and drm kernel modules from git:
1. git clone git://anongit.freedesktop.org/~agd5f/drm
2. cd drm
3. git checkout -b r6xx-r7xx-3d origin/r6xx-r7xx-3d
4. ./autogen.sh --prefix=/usr
5. make
6. sudo make install
7. cd linux-core
8. make drm.o radeon.o
9. copy the new modules into your kernel tree. Depending on your kernel, either:
sudo cp drm.ko /lib/modules/`uname -r`/kernel/drivers/char/drm/
sudo cp radeon.ko /lib/modules/`uname -r`/kernel/drivers/char/drm/
or:
sudo cp drm.ko /lib/modules/`uname -r`/kernel/drivers/gpu/drm/
sudo cp radeon.ko /lib/modules/`uname -r`/kernel/drivers/gpu/drm/radeon/
10. sudo depmod -a
++++++++++++++++++++++++++++++++++++++++
Building mesa from git:
1. git clone git://anongit.freedesktop.org/mesa/mesa
2. cd mesa
3. ./autogen.sh --prefix=/usr --with-dri-drivers=r600 --disable-gallium
4. make
5. sudo make install
++++++++++++++++++++++++++++++++++++++++
Building xf86-video-ati from git:
1. git-clone
git://anongit.freedesktop.org/git/xorg/d
2. cd xf86-video-ati
3. ./autogen.sh --prefix=/usr
4. make
5. sudo make install
2009-10-20 04:55 am (UTC)
I think you need to pull down the entire kernel tree even if you are only building drm, but your internet connection can't *possibly* be as slow as mine so don't worry about it ;)