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 Benchmarking Platform
Phoromatic Test Orchestration

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.

Latest Linux News
  1. GNOME's Mutter Now Supports Drag-n-Drop To/From Wayland & X11
  2. Wine 1.7.44 Works On More 64-bit ARM Support
  3. Phoronix Test Suite 5.8 Milestone 5 Brings Near Final "Belev" Experience
  4. For AMD Users, Linux 4.2 Will Bring The New AMDGPU Driver & VCE1 For Radeon
  5. Atomic Mode-Setting Still Baking For Samsung's Exynos DRM Driver
  6. Ubuntu Phone Update This Month Brings Many Improvements
  7. Fedora's "Fedup" To Be Replaced In Fedora 23
  8. Android M Should Bring Greater Performance & Efficiency
  9. AMD Teases Upcoming Radeon "Fiji" GPU Launch
  10. Dell Makes An Ubuntu Installation Guide, Suggests Users Try It Out
Latest Articles & Reviews
  1. Opening The Gates To Our Daily Open-Source Linux Benchmark Results
  2. The Latest Features For Linux Performance Management + Benchmark Monitoring
  3. Noctua NH-U12DX i4 + NF-F12
  4. Btrfs RAID 0/1 Benchmarks On The Linux 4.1 Kernel
Most Viewed News This Week
  1. NVIDIA's Proprietary Driver Is Moving Closer With Kernel Mode-Setting
  2. Zapcc Claims To Be A "Much Faster C++ Compiler"
  3. OpenWRT 15.05 Preparing Improved Security & Better Networking
  4. Features Added To Mesa 10.6 For Open-Source GPU Drivers
  5. Ubuntu's LXD vs. KVM For The Linux Cloud
  6. The Latest Linux Kernel Git Code Fixes The EXT4 RAID0 Corruption Problem
  7. Friction Building Around An Ubuntu Community Council Decision
  8. Fedora 22 Is Being Released Next Tuesday