Good news!

Alex Deucher and I have worked hard in the last months to finally get
some triangles (and textures, etc.) out of r6xx and r7xx chips from AMD.
This includes work on the initial r6xx drm implementation by Dave
Airlie, and a lot of work by John Bridgman to get the final "go" with
the necessary IP reviews.

The results are now finally upstream:

- the r6xx-r7xx-support branch of mesa/drm

  This only includes the easy bits, so far it's only sufficient for X11
  acceleration, additional bits will be needed for a fully working DRI
  driver. E.g. there is no packet submission interface yet, as a packet
  verifyer is missing.

- the r6xx-r7xx-support branch of driver/xf86-video-radeonhd

  This adds early EXA acceleration bits, not exactly working and more
  for developers than for users.

- the new mesa/r600_demo repo

  This is a bringup utility that uses the Xserver's DRM interface for
  programming the chip directly, and is used for understanding features
  of the chips before bringing the code to the X11 driver or Mesa.

  Due to the IP review process we cannot publish the original git
  repository at the moment, but I will publish a list of git commits at
  a later point of time, so if you find something interesting / strange
  you have a chance of validating that yourself.

I explained the code and some of the chip's behavior in my latest blog
entry ( ) - you might want to
read that before actually digging into the code.

We documented everything we encountered during the development of
r600_demo, but that has to be IP reviewed as well, and will probably be
published only after the register documentation, most probably in the
form of one or multiple wiki pages.

We have also started with a DRI driver - actually, the driver already
does software fallbacks correctly (except for z Buffer readbacks), but
doesn't have a single register banging line of code yet. We'll publish
that early next year, when there is actually something to show.

I'm afraid that the current state of code and documentation is probably
not enough for non-NDA developers to add substantial stuff to a driver,
but that will certainly change over time. It certainly is enough to do
some first own experiments with r600_demo, but be aware that the
different chipset generations behave subtly different, so if possible
test / let test with multiple chipsets before publishing any patches
(which are of course welcome!).

Have fun


Matthias Hopf <>      __        __   __
Maxfeldstr. 5 / 90409 Nuernberg   (_   | |  (_   |__
Phone +49-911-74053-715           __)  |_|  __)  |__  R & D

Dri-devel mailing list

Reply via email to