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. Acer B286HK: A 28-inch UHD LED 4K Monitor For As Low As $350
  2. Intel Xeon E5-1680 v3 & E5-2687W v3 Compared To The Core i7 5960X On Linux
  3. Intel 120GB 530 Series SSD Linux Performance
  4. Btrfs/EXT4/XFS/F2FS RAID 0/1/5/6/10 Linux Benchmarks On Four SSDs
Latest Linux Articles
  1. Mesa Git Yields Performance Improvements For Newer AMD GPUs
  2. Apple OS X 10.10 vs. Ubuntu 14.10 Performance
  3. Mesa 10.5-devel Brings Some Intel Haswell HD Graphics Changes Over Mesa 10.3
  4. NVIDIA vs. Nouveau Drivers With Linux 3.18 + Mesa 10.4-devel
Latest Linux News
  1. Jolla Tablet Could Have Upgrades For MicroSDHC, Split Screen, 3.5G
  2. Intel Has Last Round Of DRM Changes For Linux 3.19, Starts Dropping DRI1/UMS
  3. Fedora 21 Release Candidate 1 Awaits Your Testing
  4. GCC 5 Adds Support For ARM's Cortex-A17
  5. KWayland Server Component Coming For KDE Plasma 5.2
  6. NVIDIA Posts Tegra Gallium3D Patch For K1+ Support
  7. Ubuntu 14.10 MacBook Air Tests With Linux 3.18, Mesa 10.5
  8. AMD Richland APU Support Added To Coreboot
  9. 2014 Holiday Shopping Reminder, Happy Thanksgiving
  10. Python 3 Support Added To The GNOME Shell
Latest Forum Discussions
  1. Updated and Optimized Ubuntu Free Graphics Drivers
  2. Hurrican SDL Port
  3. Roadmap to Catalyst 14.10 ?
  4. how to configure module phoromatic ?
  5. PulseAudio 6.0 Is Coming & Other Linux Audio Plans For The Future
  6. Debian Developer Resigns From The Systemd Maintainership Team
  7. Cant get working Kaveri APU - A10-7850k
  8. Script for Fan Speed Control