For years we have been talking about open-source ATI Radeon power management for their Linux driver and it's finally all coming to fruition. Back in April of 2008 we talked about dynamic clocks coming to R500+ ASICs and various other initiatives to improve the Radeon power management in their DDX driver, but everything got shook up with the migration to their ATI kernel mode-setting driver, which finally now allows for real power management capabilities.
Last year a new set of DRI2 extensions came about for sync and swap support of display buffers to better reduce potential "tearing" that may appear on displays in some composited environments. This work that's exposed to the client through OpenGL/GLX extensions also can lead to improved performance, video memory savings, and other benefits as talked about extensively on the Composite Swap Wiki page. A new GLX swap event extension also came about out of expressed needs by the Clutter/Mutter developers.
While early adopters of Ubuntu 10.04 "Lucid Lynx" have had access to the Catalyst 10.4 Linux driver for more than a month (in fact, two pre-releases) this afternoon AMD has officially released their April Linux driver.
Just hours ago we reported on AMD's position for the Gallium3D driver architecture according to John Bridgman, but some of his comments may now be different considering their Gallium3D adoption plans. After sending off that email with his Gallium3D comments, he learned that the Evergreen (a.k.a. Radeon HD 5000 series) support upbringing will be slightly different than planned.
If you're a member of the Phoronix Forums where John Bridgman, the AMD employee in charge of the open-source ATI graphics strategy, is known to frequently post (with over 4,200 comments) along with many other X.Org developers and AMD employees, you pretty much know what there is to know about their position on Gallium3D and other topics. However, if you don't, this post is for you.
A month ago the Canonical crew working on Ubuntu 10.04 LTS received an unreleased Catalyst 10.4 driver from AMD for inclusion with the Lucid Lynx since the publicly available ATI Catalyst drivers had not -- and to this day still do not -- support the X.Org Server 1.7 used by this next Ubuntu release. Similar pre-releases for Ubuntu have happened in the past when AMD hasn't been quick to the game in supporting new Linux kernels and X Servers. This driver was made available in Ubuntu 10.04 even before Catalyst 10.3 was released. Catalyst 10.4 still has not been publicly released, but another updated 10.4 driver has made its way into the Lucid repository.
While up to this point AMD has only cleared Evergreen shader documents for release to the general public, the developers at AMD responsible for working on the open-source support have been working on some code too for this Radeon HD 5000 series support. The Linux 2.6.34 kernel has kernel mode-setting (KMS) support for the ATI Radeon HD 5000 series graphics cards, but it goes without any 2D/3D/X-Video acceleration support. There's also DDX Evergreen support allowing these "R800" class GPUs to work with user-space mode-setting. That's really been the extent of the open-source support though for these graphics cards that are a few months old.
More than a year ago AMD rolled out the ATI FirePro V8700 workstation graphics card and months later then pushed out the FirePro V8750 as their new ultra high-end graphics card for those engaging in CAD, imaging, and other tasks. Now though AMD has unveiled the FirePro V8800 series that replaces the V8750 for the top spot.
It's been over a year since the last major release of the ATI X.Org driver, xf86-video-ati 6.12.0, but today the xf86-video-ati 6.13.0 driver has finally replaced this open-source ATI graphics driver.
Woah, here comes a pleasant surprise from AMD with their Catalyst Linux driver. AMD yesterday released a Catalyst 10.3 Linux driver that really didn't bring anything too exciting (and it still doesn't support X.Org Server 1.7), but today they've delivered a new preview driver that's based on Catalyst 10.3 and it brings OpenGL 3.3/4.0 support!
AMD has just put out their monthly update of the Catalyst Linux driver. Though as we already know based upon AMD giving Ubuntu a new driver, the support for X Server 1.7 is not coming until next month, which also offers official Eyefinity support and other changes. As such, Catalyst 10.3 isn't too interesting.
Well, to no surprise the trend of Ubuntu receiving unreleased Catalyst drivers has continued. Since Ubuntu 8.10, AMD has had to supply Canonical with early Catalyst drivers not otherwise publicly available so that they could ship with support for their binary Catalyst driver within the operating system's package repository.
On Sunday we reported that ATI in-kernel power management was moving along after AMD's Alex Deucher spent some time in recent days building upon Rafał Miłecki's initial power management support. Alex's patches added GUI idle IRQ support, support for changing the GPU clocks when the engine is idle, support for turning down the number of active SIMDS when running in a lower power stage for the ATI R600 ASICs and later, and new ASIC specific callback functions. This morning though he's taken the support a bit further.
Alex Deucher this morning put out the xf86-video-ati 6.12.6 point release, which isn't too interesting, but of greater interest he did put out a second release candidate for the forthcoming KMS-capable xf86-video-ati 6.13 DDX driver. There's already a lot to be found with this long-overdue and major xf86-video-ati 6.13 X.Org driver update, but added to this second release candidate (that's officially v6.12.192) is an ATI R600/700 GPU fix that should significantly improve the performance of EXA DFS acceleration.
A few months back HDMI audio support came to the ATI Radeon kernel mode-setting driver and while this support is in place with the mainline kernel, it's only supported up through the ATI R600 hardware with the KMS driver. However, HDMI audio support for the R700 (Radeon HD 4000 series) is soon coming. Rafał Miłecki who has done much of the HDMI audio work for the open-source ATI driver stack has shared that he has achieved R700 audio success and the support may land in as soon as the Linux 2.6.34 kernel.
With the Linux 2.6.33 kernel having been released last week where the ATI kernel mode-setting (KMS) DRM code left the kernel's staging area, we knew a new ATI X.Org driver release was imminent. Over the night a new stable DDX driver update has been pushed out for xf86-video-ati as well as a new pre-release for the KMS-supportive 6.13 version that also carries other changes.
The xf86-video-ati 6.12.0 X.Org driver was released in March of 2009. Since then there has been no significant releases of the ATI X.Org driver, but fortunately, a new release is on the way.
This morning we reported on AMD revealing forthcoming Catalyst driver changes, particularly a set of new features that applied to Windows users. However, we hinted that there might be some changes coming to the Linux driver and now Catalyst 10.2 for Linux is out there so we have the first confirmation of what may be to come.
While AMD does not generally reveal planned changes and feature road-maps publicly for their Catalyst driver in advance of the given driver's public release, over the night they have announced a few upcoming changes. Last night AMD issued a press release announcing a set of changes coming for the 10.2 and 10.3 driver releases, which will be released this month and next, respectively.
David Airlie has re-based his drm-radeon-testing tree and there's now a whole lot of new code and features that users can play with and test. The drm-radeon-testing tree is a branch of the Linux kernel and is code for the Radeon DRM area that will ultimately make it into the mainline tree in the Linux 2.6.34 kernel series and later.
XvMC support came to Gallium3D through a Google Summer of Code project for 2008 that involved getting X-Video Motion Compensation running atop the Nouveau driver with NVIDIA hardware. We described this work in The State Of Gallium3D Video Decoding and subsequently in Nouveau's Gallium3D Driver Gets Video Boost. In 2009 this XvMC work using GPU shaders moved into the X.Org state tracker. XvMC in Gallium3D hasn't been too much of a focus as developers are still working on driver support and other state trackers like for OpenGL 3.x and OpenCL. More users are also interested in VDPAU and its superior support and decoding abilities than the antiquated XvMC. However, AMD's Cooper Yuan has been toying around with this Gallium3D-XvMC code for the R300 Gallium3D driver.
Months after the ATI Radeon HD 5000 series (known by the "Evergreen" family codename) was introduced, AMD has finally pushed out the first bits of open-source code. This morning if you are to checkout the xf86-video-ati DDX driver branch there is initial user-space mode-setting support for the Radeon HD 5000 series GPUs. The ATI kernel mode-setting support that we really care about these days is also about done, but it isn't yet published. The open-source ATI driver currently offers no 2D (EXA) acceleration and the 3D support either through a classic Mesa driver or Gallium3D also is not yet available.
Jerome Glisse has sent a new patch to the other DRI developers that adds a command checker for the ATI R600/700 series graphics processors. The command stream (CS) checker ensures that no commands are attempting to access the GPU in a way that it shouldn't, such as accessing memory out of its resource size, which without the safety mechanism could be exploited by those with malicious intentions. Jerome still has a few items on his TODO list for this R600/700 series command stream checker, but it's now published for review and could potentially be ready in time for the Linux 2.6.34 kernel merge window.
AMD has done their monthly roundabout and released the ATI Catalyst 10.1 Linux driver. Found in the Catalyst 10.1 driver change-log is "Ubuntu 9.10 production support", even though AMD seeded them with an unreleased Catalyst driver since September and the official Catalyst releases since October have worked just fine with Ubuntu 9.10. Besides the "support" for Karmic Koala there are bug-fixes and they include a few AMDCCCLE / Catalyst Control Center fixes, HDMI hot-plugging fixes, and more. There are also updates packaging scripts from Phorogit and better OpenGL 3.x support. There is, however, still about a page of known issues and that's just their public list.
When it comes to Gallium3D hardware drivers for ATI Radeon graphics cards, most of the work up to this point has been focused on the R300g driver that is for ATI's older graphics processors up through the R500 / Radeon X1000 series. The Gallium3D R300 DRI support is considered done as is most of the driver. The ATI Gallium3D driver though isn't ready for prime-time usage quite yet, but should undergo more broad testing shortly along with the state trackers. The Gallium3D support for newer ATI/AMD graphics processors (particularly the R600/700 series, R800/Evergreen support has not been started) still is very premature and it will be a while before this driver stack is stable. The good news though is that it's progressing and the R600/700 winsys for Gallium3D has emerged.
In the comments area to the recent X.Org Talks For FOSDEM 2010 Still Missing posting, AMD's John Bridgman basically stated that there would be no talk on their open-source ATI driver progress as it's becoming predictable (and there's also a decreased travel budget), but his second comment was more interesting. "I'm kinda hoping we can have initial (display + shadowfb) Evergreen support out by FOSDEM. Fingers crossed."
AMD's Alex Deucher has just committed initial support for Embedded DisplayPort (eDP) connectors/monitors to the xf86-video-ati DDX display driver. Traditional DisplayPort monitors are already supported by this open-source ATI driver, but now Embedded DisplayPort connectors should begin to work as well. Here is the Git commit that provides the initial support.
Yesterday some R500+ PowerPlay code was started on (but not yet usable), and now at the same time we have more exciting AMD news to report. AMD has just released their shader instruction set documentation for the R800 "Evergreen" graphics processors!
Besides the Radeon DRM improvements (and Radeon HDMI KMS audio) to be found in the Linux 2.6.33 kernel, there is more to be thankful for this holiday season when it comes to the open-source support. Up to this point when it comes to power management for ATI's kernel mode-setting support the work (Radeon DRM Power Management Moves Along) has been largely done by Rafał Miłecki, an independent open-source developer. AMD nor any of its affiliate developers haven't really pushed out any major power management code (or technical documentation) yet, as we have heard some of it was being held up internally within their intellectual property review process, but it looks like things are changing.
If Catalyst 9.12 for Linux and its changes didn't deliver on what you wanted for your Christmas wishes, perhaps this change to their open-source driver does deliver on one of your hopes. The ATI R600/700 open-source 3D stack should now be OpenGL 2.0 compatible (compared to OpenGL 1.5 previously) and the GLSL (GL Shading Language) support should be "mostly" completed.
727 AMD news articles published on Phoronix.