AMD Ports Open-Source Linux Driver To Windows Embedded
Written by Michael Larabel in Display Drivers on 13 October 2011. Page 2 of 2. 67 Comments

This AMD GPU driver port is specifically about bringing "Evergreen" generation support to Windows Embedded Compact, which will likely be for AMD Fusion support on WEC7. It is not clear from the current public messages whether AMD has ported the Mesa/Gallium3D code to Windows Embedded Compact 7, or just the DRM/kernel side and will be coming up with their own user-space OpenGL ES 2.0 driver. It is quite possible though they will be using Gallium3D since Mesa is cross-platform, matches the DRM driver design, and the Evergreen-supportive R600g hardware driver could be ported to Windows with a new winsys and other changes. The latest Gallium3D code does have GLES 2.0 support for Radeon via a state tracker, but the open-source driver is slower than Catalyst. Porting the Radeon DRM also means they have likely brought TTM (Translation Table Maps), the GPU memory manager used internally by Radeon, to WEC7 as well.

Read The Most Comprehensive AMD Radeon Linux Graphics Comparison from last month for a complete look at the AMD Linux driver options and where I test more than two dozen Radeon graphics cards under both drivers. There's also my ~400 other Linux graphics driver articles.

Cleaner & Lighter

It does make some sense in AMD using the open-source Linux driver as a basis for a new Windows embedded driver rather than Catalyst, since the code-base is newer, cleaner, and lighter than Catalyst. The open-source Radeon Linux driver can be measured in tens of thousands of lines of code, rather than several million lines of code as Catalyst / fglrx is reported to be in size. In searching through the Git kernel logs and older mailing list messages, there does not appear to be any contributions back from Frank Huang to the Linux driver, whether it's fixes for bugs spotted along the way or in trying to make up the feature parity to Catalyst. Prior to this, Frank was one of the AMD China engineers who was working on the Linux Geode driver.

This WEC7 driver project appears to have been going on for nearly one year. In a later message, Frank explains, "actually Alex [Deucher] helps me a lot in AMD internal. I appreciated him very much. He supports me for this project for nearly a year. But sometimes, he is a little busy with community's stuff. So I'll ask some quesitons [sic] here directly. Hope you guys can give me some suggestion (i.e. this S3 issue.)"

Open-Source Code Making A Proprietary Driver

It appears that AMD is not interested in making this Linux driver port to Windows Embedded Compact 7 an open-source driver. This is allowed since the Radeon graphics driver code is released under the MIT license (even the DRM bits within the Linux kernel, since MIT is GPL compatible), which is permissive and permits reuse within closed-source proprietary software. Frank writes in another email, "the DRM kernel driver is all MIT-licensed and we will be free to use them. When the drm uses linux kernel function calls, we will use freebsd(none-GPL) equivalent to replace." So where the Radeon driver hooks into GPL-only code, AMD is pulling in the equivalent FreeBSD code, which is BSD-licensed and can be happily included in proprietary software.

While this AMD driver port to Microsoft WEC7 may not provide any direct benefit back to the open-source Linux driver, at least other areas of AMD are now beginning to have a vested interest in the mainline Linux driver, which will hopefully ensure its continued development and enrichment. If any other information about this driver's development is learned, it will be passed along, or stop by the Phoronix Forums where there will likely be many polarized views expressed, conspiracy theories, and perhaps some comments from AMD (namely Alex Deucher, the most prolific forum poster John Bridgman, etc).


About The Author
Author picture

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter or contacted via MichaelLarabel.com.


Related Articles
Trending Linux News