There are many new and innovative features brewing within the X.Org development community right now -- among the many are Gallium3D, the TTM memory manager, and MPX (Multi-Pointer X) -- but one of the features that has risen towards the top of the list and delivers visible benefits to the end-user is kernel-based mode-setting. As implied by its name, kernel mode-setting involves moving the mode-setting code for video adapters from the user-space X server drivers into the Linux kernel. This may seem like an uninteresting topic for end-users, but having the mode-setting done in the kernel allows for a cleaner and richer boot process, improved suspend and resume support, and more reliable VT switching (along with other advantages). Kernel mode-setting isn't yet in the mainline Linux kernel nor is the API for it frozen, but Fedora 9 shipping next month will be the first major distribution carrying this initial support. In this article we're looking more closely at kernel mode-setting with the Intel X.Org driver as well as showing videos of kernel-based mode-setting in action.
In the last quarter of 2007 AMD was on a spree with their proprietary Linux driver as they introduced their new OpenGL driver, which brought major performance improvements, and that was followed by AIGLX support. This year, however, their Catalyst Linux driver activity has been relatively quiet for end-users. Since switching over to this much-improved code-base, they have been able to deliver same-month product support for their new graphics processors such as the Radeon HD 3650, 3850/3870, and the 780G-based IGP, which once couldn't be said for this company that had taken them a half-year to deliver support for the Radeon X1000 (R500) and Radeon HD 2000 (R600) product families. Today the Catalyst 8.4 Linux driver has been released, and like the 8.1, 8.2, and 8.3 drivers, this month's update comes with minimal changes.
Last week it was exclusively reported by Phoronix that a new NVIDIA binary Linux display driver should be out in the next week, and sure enough we were right, again. The NVIDIA 173.08 Linux driver was released last night and features support for several new NVIDIA GPUs, including the GeForce 9800 series, experimental support for X Server 1.5, and a number of fixes with Linux 2.6.25 kernel compatibility.
It's been a long time in the making, but the xf86-video-radeonhd 1.2 driver has just been pushed out the door. RadeonHD 1.2 is the first new release for this open-source ATI R500/600 driver since December of last year. The RadeonHD 1.2 driver includes support for new AMD graphics processors, 2D XAA/EXA acceleration, and other changes.
Announced this morning at the second annual Linux Foundation Collaboration Summit is a new open-source driver development initiative. VIA Technologies has announced its strategic open-source driver development initiative. VIA will be providing technical specifications, source-code, and other information regarding their latest products. In addition, they'll be opening a new web-site devoted to its new Linux efforts.
In the first Nouveau Companion this spring, the free software developers reverse-engineering the NVIDIA Linux driver have provided a new status update. Most of the progress recently made to this open-source X.Org driver is for the NV50 GPUs found on the GeForce 8 and 9 series. There is a new test program for directly communicating with NV50 processors and that these newer graphics cards have reached the milestone of being able to render an object with this driver. Approaching soon is supporting the TTM memory manager with Nouveau. The open-source Nouveau developers are hoping to get some Google Summer of Code students working on XvMC support and suspend-and-resume along with a simple Gallium3D backend for the NVIDIA NV2x ASICs.
In the thirty-seventh edition of the Nouveau Companion, the topics covered largely come down to Gallium3D, the status of the Nouveau driver for each of the NVIDIA product families (primarily the GeForce 8 series), and of interest is that RandR 1.2 should soon be enabled by default for this reverse-engineered open-source 2D/3D NVIDIA driver. The Nouveau developers are working on Gallium3D extensively and recent David Airlie had tried the Nouveau Gallium3D driver for PowerPC, but there is a problem with depth buffers. The GeForce 8 (NV50) status is continuing to improve but there's still work to be done, as these GPUs have no NV40 compatibility mode. Read the rest in this edition of the Nouveau Companion.
Coming just a day after AMD had opened up their production microcode from their proprietary drivers for the R100 to R600 GPUs, a significant milestone has been reached in the road to open-source 3D graphics capabilities for the Radeon X1000 (R500) series. We now have hardware-accelerated glxgears!
In the next step towards open-source 3D support for the R500 and R600 GPUs (Radeon X1000 and Radeon HD 2000/3000), AMD has just pushed its production microcode into the Mesa/DRM git tree. This is the microcode found in the fglrx driver and it covers the Radeon R100 to R600 product families.
For Linux distribution vendors, right now is proving to be an awkward time for them as they decide which ATI driver will ship as the default choice in their spring distribution refresh. The problem used to be whether to ship a binary-only driver in the distribution in order to provide "out of the box" support for all available graphics hardware, but on the ATI/AMD side the software distributors are now facing the challenge of which open-source driver they should call the de facto standard. In this article we are briefly looking at the matter of the xf86-video-ati vs. xf86-video-radeonhd drivers, the highly political issue of AtomBIOS, and what some of the popular Linux distributions are deciding to use this spring.
Last month right before FOSDEM 2008, the 3D programming documentation for the R500 GPUs (Radeon X1000) series was released. This documentation consisted of a register reference guide for the R500 GPUs as well as a programming guide covering such areas as the command processor, vertex shaders, and fragment shaders. While the register reference guide for the R600 series is still being worked on, for those with older ATI graphics processors, AMD has went back and created a register reference guide for the R300 series.
Following a period of relative inactivity in the xf86-video-radeonhd git tree over the past few weeks, this afternoon Novell's Egbert Eich had pushed forward 55 changes to this open-source R500/600 driver. The AMD Radeon HD 3400 and 3600 series are now supported and there are a number of other significant changes. The RV620/635 mode-setting support has required the most significant work since the R500 series, since all output blocks have been altered due to the introduced DisplayPort capabilities. We have already tested out this latest code and were left with a positive impression.
On the same day as the limited open-source support arriving in the xf86-video-nv driver, NVIDIA's binary display driver for Linux has been updated to officially add support for the GeForce 9600GT graphics card. This new driver update is version 171.06 (Beta) and its only change is the added 9600GT support, but that's compared to the 171.05 driver that was targeted specifically for the Tesla S870.
Last month with the Catalyst 8.02 Linux driver we mentioned just how low on the end-user changes the fglrx driver has been in recent months, and today the Catalyst 8.3 Linux driver has been released with the release train slowly chugging along. The only new feature in this month's proprietary Linux driver is X-Video support for the Xpress 1200 hardware, but there are a few bug fixes that may satisfy some Linux users.
With FOSDEM 2008 taking place about two weeks ago, the 36th edition of the Nouveau Companion contains a special feature with FOSDEM-Nouveau coverage as well as in-depth thoughts from the developers that had attended this Linux conference in Brussels. Also covered in this development newsletter is new Gallium3D progress in their mainline Nouveau branch, MMioTrace is still planned for the Linux 2.6.26 kernel, and more RandR 1.2 improvements within this free software NVIDIA driver.
It was a year ago that AMD had replaced its aging FireGL Control Panel inside its Linux driver with the AMDCCCLE, or AMD Catalyst Control Center Linux Edition. Since that time, this Catalyst Control Center for Linux continues to mature with a few new features being added here and there, and version 2.0 could in fact be introduced in an upcoming release. At the same time, the control panel utility that ships with NVIDIA's binary driver, nvidia-settings, has stayed more or less the same for the past few years with only a few minor revisions. How do these two Linux control panels compare though when it comes to the features? For this article we have put AMDCCCLE and nvidia-settings side-by-side to compare and contrast both utilities.
We know NVIDIA has been working on a new Linux display driver release, with the GeForce 9 series having been introduced just this past week, and today a new driver release has arrived for Linux, Solaris, and FreeBSD. However, this new 169.12 display driver doesn't introduce support for the GeForce 9600GT and its official changes are limited to maintenance items.
This afternoon at FOSDEM 2008 in the X,Org development room, Keith Whitwell of Tungsten Graphics had provided a status update on the Gallium3D graphics driver architecture followed by Jerome Glisse talking about his work in porting the Radeon driver from DRM to Gallium3D. Jerome had also commented on other Radeon/X.Org topics such as kernel mode-setting. In this article are Gallium3D notes from these two talks.
Starting off the X.Org talks at FOSDEM 2008 was AMD's John Bridgman, who has been leading the AMD GPG open-source efforts. John had talked briefly about the history of their open-source efforts for the R500+ series and the evolution of AMD GPU hardware. Among the interesting comments made were that TexturedVideo/X-Video support for the R500/600 may be coming quite soon, DRM and Mesa work forthcoming, open-source multi-GPU CrossFire support is on the road-map, and they will be re-releasing R200 programming documents. The RV620 and RV635 documentation is expected in the near future.
For the past several weeks we have been referencing AMD's "tcore" in several of our articles, which is a user-space software suite that has been developed and used internally at ATI by engineers to work on various aspects of their binary drivers. Tcore is primarily used for testing prior to the availability of the actual silicon for their forthcoming graphics processors. John Bridgman and Alex Deucher have been working tediously to get this tcore source-code sanitized and cleared for public release, and finally they have reached this milestone. AMD has just published the first bits of open-source 3D programming documentation for ATI GPUs. This 3D programming documentation covers the R500 series and even goes back with information on the R300/400 series as well. The R600 3D programming guide will also be out soon. This information available today is what will foster the growth of open-source R500/600 3D support for the Radeon and RadeonHD drivers as well as R600 2D acceleration.
In the 35th edition of the Nouveau Companion, these open-source 3D NVIDIA driver developers talk about being a better bug reporter, X-Video improvements, PowerPC fixes, and MMioTrace being delayed until the Linux 2.6.26 kernel. At least three Nouveau developers will be at FOSDEM 2008 next week in Brussels, Belgium.
Whether it is a big or small update, every month AMD releases a new Catalyst package for both Linux and Windows for their supported ATI Radeon products. Last month in the Catalyst 8.01 Linux driver the changes had just consisted of a few bug fixes and nothing more. Today the Catalyst 8.02 Linux driver has been released, and like last month, it's short on the change-log. The fglrx changes are very brief and the driver version is still in the 8.45 release stream and wasn't even bumped to 8.46.x.
Since last September when AMD's new open-source strategy was unveiled, their xf86-video-radeonhd driver and NDA-free documentation efforts have largely been to improve its Linux customer base. However, with this open community enablement, it has also led to an improved ATI hardware status in Sun's Solaris Operating System. Introduced in Build 80 of OpenSolaris was the RadeonHD display driver and this R500/600 driver has now appeared in Solaris Express Developer Edition 1/08 and Project Indiana Preview 2.
Last night NVIDIA quietly uploaded a new Linux display driver to their FTP server. This new driver is tagged 171.05, while the latest public driver has been 169.09. Having already three releases in the 169.xx series, this is a moderate update to 171.xx, but according to NVIDIA it's not for everyone. There is no official change-log that NVIDIA has published for the 171.05 driver, and the change-log that ships with the driver hasn't been updated (whether it be intentional or not). The only word that has come out of the NVIDIA camp on this new driver is from Christian Zander and he has said that this driver is only intended for use with the Tesla S870 GPU Computing Systems. The legacy NVIDIA Linux drivers have also been updated this week.
At the Linux.Conf.Au conference today, Intel has announced NDA-free programming documentation covering the 965 Express and G35 Express integrated graphics processors (IGPs). Intel's display driver has long been open-source, but up until now, they have not been releasing the programming documentation for these products to the public. This move comes months after AMD announced their new open-source strategy and began releasing register documentation on their R500 and R600 GPUs. These newly released documents by Intel even cover 3D and video programming for their IGPs.
The public release of AMD's "tcore" sample code is imminent, thereby steering the open-source development efforts toward R600 2D acceleration and the basis of the 3D support for the RadeonHD driver. However, in somewhat of a surprise, this afternoon XAA and EXA support was added to the RadeonHD driver for the R500 series. For those that aren't X enthusiasts or Linux veterans, XAA and EXA are architectures for providing 2D graphics acceleration. With this accelerated 2D support, we have benchmarked both XAA and EXA on the xf86-video-radeonhd driver as well as with the xf86-video-ati driver and the binary fglrx driver.
The 34th edition of the Nouveau Companion is now available for your reading pleasure. The Nouveau crew this time around debates the issue of whether they should push a 2D-only release of the Nouveau driver out the door while continuing the 3D work, integrating MMioTrace into the mainstream kernel, the status of RandR 1.2, TV-Out support getting underway, and last but not least is the status of the Nouveau Gallium3D driver.
X-Plane is marketed as the "most thorough, flexible, and realistic flight simulator available for personal computers" and ships not only for Windows and Macintosh platforms but also for Linux. Laminar Research produces X-Plane and while it's currently not part of our testing suite, we recently took X-Plane v9 Beta 18 for a test flight. Previously their community leader had classified using ATI Linux drivers with X-Plane as an "unusable disaster" with "insurmountable problems", but is that really the case? We explored the situation in this article.
Back in June of 2005 with the ATI Linux 8.14.13 driver release was a new installer to more easily facilitate the installation of this binary graphics driver using a graphical interface for a generic setup or generating distribution-specific packages (at that time Red Hat was the only officially supported distribution). With time, this installer has evolved by gaining new features and more distributions are being supported through their --buildpkg command for generating custom driver packages. These packaging scripts are now even hosted in the open for more community interaction. With two new driver options that will be formally introduced next month in Ubuntu's packaging scripts for the Catalyst 8.02 Linux driver, the installation process of the ATI fglrx driver on Ubuntu will become several steps easier.
One month and one day after the NVIDIA 169.07 display driver was released, the Santa Clara folks have released a minor driver update for Linux and Solaris. No new features have been introduced, but just a couple of bug fixes.
807 display drivers articles published on Phoronix.