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. Intel Xeon E5-1680 v3 & E5-2687W v3 Compared To The Core i7 5960X On Linux
  2. Intel 120GB 530 Series SSD Linux Performance
  3. Btrfs/EXT4/XFS/F2FS RAID 0/1/5/6/10 Linux Benchmarks On Four SSDs
  4. AMD's Windows Catalyst Driver Remains Largely Faster Than Linux Drivers
Latest Linux Articles
  1. NVIDIA vs. Nouveau Drivers With Linux 3.18 + Mesa 10.4-devel
  2. Is The Open-Source NVIDIA Driver Fast Enough For Steam On Linux Gaming?
  3. Linux 3.18 File-System Performance Minimally Changed But Possible Regressions
  4. AMD Radeon Gallium3D Is Catching Up & Sometimes Beating Catalyst On Linux
Latest Linux News
  1. Linux 3.18-rc6 Released, A Worrisome Regression Remains
  2. HandBrake 0.10 Brings H.265 & VP8 Encoders
  3. Gngr: A New Web Browser Focused On Privacy
  4. Linux 3.18 Kernel: Not Much Change With Intel Haswell Performance
  5. More File-System Tests Of The Linux 3.18 Kernel
  6. Using NVIDIA's NVENC On Linux With FFmpeg
  7. There's Talk Again About An "Open To The Core" Ubuntu Laptop
  8. PowerVR SGX Driver Code Gets Leaked
  9. V2 Of KDBUS Published For Linux Kernel Review
  10. VirtualBox 4.3.20 Arrives, Still No Sign Of VirtualBox 4.4
Latest Forum Discussions
  1. PulseAudio 6.0 Is Coming & Other Linux Audio Plans For The Future
  2. Debian Developer Resigns From The Systemd Maintainership Team
  3. Roadmap to Catalyst 14.10 ?
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. Cant get working Kaveri APU - A10-7850k
  6. Script for Fan Speed Control
  7. Debian Init System Coupling Vote Results
  8. The Slides Announcing The New "AMDGPU" Kernel Driver