Hi Alex, first of all: A very big THANK YOU to everybody involved. Ok, now to the hard work getting this up and running: Radeonhd won't even compile after i checked out the r6xx-r7xx-support branch. Digging into it i found that gcc is complaining about function declaration and definition mismatch in r600_state.h and r6xx_accel.c. When i take a look into r600_state.h i can see prototypes for a bunch of inline functions: inline void e32(drmBufPtr ib, uint32_t dword); inline void efloat(drmBufPtr ib, float f); inline void pack3(drmBufPtr ib, int cmd, unsigned num); inline void pack0 (drmBufPtr ib, uint32_t reg, int num); inline void ereg (drmBufPtr ib, uint32_t reg, uint32_t val); I don't really know why gcc is complaining about a declaration mismatch here, but after moving those functions into the header file and commenting out draw_immd in the header file the code seems to compile fine. I'm using gcc version 4.3.2 with X.Org X Server 1.5.99.3. Both from Ubuntu Jaunty (9.04 Beta). A patch with my changes to radeonhd sources is attached, hoping this will help cleaning up the code a little bit. After compiling and installing the driver seems to work normal (without dri). so i started to get the drm code compiled. After realising that the Ubuntu standard kernel doesn't compile drm as a module i compiled my own 2.6.28 kernel. Now the drm modules compile and load quite fine. After adding the DRI option to my xorg.conf and firing up the xserver i get a nice kernel oops in r600_do_init_cp. And that's the point where i'm stuck. Because i am not familiar with the drm code and haven't programmed inside the kernel for years. Output of dmesg and lspci is attached, do you need anything else? or have an idea what's going wrong? Bye, Christian.