1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

AMD Ports Open-Source Linux Driver To Windows Embedded

Michael Larabel

Published on 13 October 2011
Written by Michael Larabel
Page 1 of 2 - 67 Comments

Here's something interesting or perhaps odd: AMD has been porting the open-source Radeon Linux driver to Windows Embedded Compact 7 (WEC7) as its graphics driver.

This discovery comes to light as an AMD engineer posed a question to the public DRI development list about the S3 suspend/resume code for the Radeon driver. The AMD engineer, Frank Huang, mentions in his e-mail that he is developing a WEC7 graphics driver for the Evergreen chipset (Radeon HD 5000 series) and that Alex Deucher has been guiding him on this work. With his Windows Embedded Compact 7 driver he is up to the point of handling suspend/resume and that he has ported some of the Linux functions to (Windows) CE. (This driver for Microsoft WEC7 has hardware acceleration, but after going through the resume process, the 3D engine breaks. "I have ported radeon_suspend_kms() and radeon_resume_kms() functions from linux to CE. Actually I have validated that the evergreen_suspend() and evergreen_resume() work already on CE. But when the resume work is done and the screen is shown up, I found the 3D engine works wrong.") He also mentions that the original Linux kernel source he is using is from October 2010 and July 2011.

For those not up to speed on Microsoft operating systems, Windows Embedded Compact 7 is the operating system that Microsoft introduced earlier in the year that is the successor to Windows CE. WEC7 is meant to cover devices that are not appropriate for Windows 7 or Windows Phone 7, such as some retail systems, medical devices, industrial systems, and other distinct form factors. Prior to Microsoft Windows 8, Windows Embedded Compact 7 might also be appearing on some tablets. In terms of graphics capabilities, this embedded Microsoft operating system supports OpenGL ES 2.0 and HD media playback.

Why port a Linux driver to Windows?

It is somewhat surprising that AMD would be porting the open-source Linux driver to a Windows platform rather than using the Catalyst driver as a base. The Catalyst driver code-base is already OS-agnostic for the most part and then there is the Windows and Linux-specific shims. It's disturbing to think just how dirty and crusty the Catalyst code-base actually is, if it's easier for AMD to port a (non-feature-complete) Linux driver to Windows rather than relying upon the mature Catalyst driver and migrating the existing Windows driver interfaces to WEC7. The Linux kernel graphics drivers aren't designed with other operating systems in mind, as even Solaris and FreeBSD are struggling to port Linux GPU drivers.


Open-source Linux driver code is finding its way to Microsoft Windows platforms.

Besides the differences between the Windows and Linux display driver interfaces, the open-source Radeon Linux driver is at a disadvantage compared to Catalyst when it comes to performance and power management. The open-source Radeon driver still lacks reliable dynamic power management (e.g. PowerPlay) and support for other features found in modern Radeon hardware.

The open-source Linux driver also lacks support for the UVD2 video engine for hardware-accelerated video playback and encoding. AMD is not providing documentation or open-source code for the video engine since the thinking right now is that it could potentially compromise their Digital Rights Management abilities under Windows. The Catalyst Linux driver meanwhile supports accelerated video playback using their XvBA interface to the UVD2 engine. At least with WEC7 they don't need to worry about CrossFire, PowerXpress, OpenGL 3.0+, OpenCL, easy-to-install driver updates, and some of the other missing Linux features that Windows users would expect out of desktop systems.

<< Previous Page
1
Latest Linux Hardware Reviews
  1. NVIDIA GeForce GTX 970 Offers Great Linux Performance
  2. CompuLab Intense-PC2: An Excellent, Fanless, Mini PC Powered By Intel's i7 Haswell
  3. From The Atom 330 To Haswell ULT: Intel Linux Performance Benchmarks
  4. AMD Radeon R9 285 Tonga Performance On Linux
Latest Linux Articles
  1. 6-Way Ubuntu 14.10 Linux Desktop Benchmarks
  2. Ubuntu 14.10 XMir System Compositor Benchmarks
  3. Btrfs RAID HDD Testing On Ubuntu Linux 14.10
  4. Ubuntu 14.10 Linux 32-bit vs. 64-bit Performance
Latest Linux News
  1. Enlightenment's EFL 1.12 Alpha Has Evas GL-DRM Engine, OpenGL ES 1.1 Support
  2. GTK+ Lands Experimental Backend For Mir Display Server
  3. Ubuntu 14.10 Officially Released
  4. Mesa 10.4 Might Re-Enable HyperZ For R600g/RadeonSI
  5. Intel GVT-g GPU Virtualization Moves Closer
  6. GTK+ 3.16 To Bring Several New Features
  7. Debian 8.0 Jessie Has Many Multimedia Improvements
  8. What Linux Benchmarks Would You Like To See Next?
  9. Open-Source, Linux Support For Corsair Link Devices Slowly Materializing
  10. Cairo-Dock 3.4 Shows A Lot Of Progress, Works Toward EGL/Wayland Support
Latest Forum Discussions
  1. Linux hacker compares Solaris kernel code:
  2. Advertisements On Phoronix
  3. HOPE: The Ease Of Python With The Speed Of C++
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. Users/Developers Threatening Fork Of Debian GNU/Linux
  6. Ubuntu 16.04 Might Be The Distribution's Last 32-Bit Release
  7. AMD Releases UVD Video Decode Support For R600 GPUs
  8. Proof that strlcpy is un-needed