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

A Call To "Kill All Proprietary Drivers For Good"

Michael Larabel

Published on 29 March 2012
Written by Michael Larabel
Page 1 of 2 - Comment On This Article

UPDATE: I have been contacted by Qualcomm PR regarding this expected presentation next week. The content of the Qualcomm Atheros developers was not approved by Qualcomm's legal department and the views to be expressed will be of their own personal beliefs.

Next week at the 6th annual Linux Foundation Collaboration Summit in San Francisco, two Qualcomm Atheros engineers will be speaking about their Linux device driver development experiences and will go as far as calling for all proprietary drivers to be killed for good. They talk not just about killing proprietary drivers for Linux, but for all operating systems. Can the plans they lay out to kill all proprietary drivers work or is this just a big pipe-dream?

Luis R. Rodriguez and Adrian Chadd are the two engineers set to be speaking at the Linux Foundation Collaboration Summit next week Thursday. These engineers from Qualcomm Atheros, yes the company in their pre-Qualcomm days that has had a long and bumpy history in Linux for WiFi support, are promoting that proprietary device drivers be killed. Luis is a Linux hacker at Atheros while Adrian joined the company as a FreeBSD hacker.

First of all, here's their session abstract, "Proprietary drivers have a long history and tradition which has been imposed upon the industry by archaic driver development models and Operating System Vendor requirements. Licensing drivers in a clean way to share with Linux and the BSD families had typically been done under the confusing Dual BSD/GPL tradition. With the 'ath5k wars' and the involvement of the SFLC we've learned a few things to help clarify this and accomplish this in a clean way, but as new driver development continues one of the biggest issues observed is quality of software with proprietary software development models. What are these issues, and how do we fix them? A Linux and FreeBSD developer propose to kill all notions of proprietary drivers practices in the industry for good, not only for Linux, but for all Operating Systems. We'll review how we plan on doing this and would like feedback from the community."

Their path to killing proprietary drivers is easier said then done, but it basically comes down to prioritize clean kernel APIs / code, permissively license Linux kernel drivers, and localize usage of the GPL. If wanting to target *BSD operating system support, pick a BSD and call for unification of BSDs. The Qualcomm employees also provide intellectual property strategies and they promote replacing "internal codebases" in favor of working with upstream Linux and upstream BSD. Further on, if driver code unification is desired, Luis and Adria say to make driver unification become a community problem. These views come from the long Atheros history on Linux and BSDs from the MadWiFi work, Linux rejecting net80211, Linux getting new 802.11 stacks (mac80211 and cfg80211), the Atheros ath5k driver coming about, the ath9k driver is upstreamed in the kernel.

In their LF Collaboration Summit presentation, the developers share that only recently Linux has become a priority on the "desktop" in terms of hardware support at Qualcomm Atheros. They also admit not all free and open-source software projects have good software, software architects can be assholes, and Microsoft and Apple at least has good run-time tests for drivers, validation, and "nice shiny certification logos."

Besides the work of creating the driver, there's also often-overlooked extensive compliance testing, certification work, internal standards / regression testing, specific customer extensions, cross-licensing of patents, and other commercial agreements are among the other challenges they have faced on their Linux/BSD driver work. "These may make it difficult to open up a commercially developed codebase."

Also expressed has been another problem for the hardware vendors and that's for multi-OS drivers and trying to do code-sharing between supported platforms as much as possible to reduce their development efforts as well as their maintenance burden of needing to certify/test multiple stacks. These WiFi driver developers recommend finding a good middle-ground between all of the OS platforms and acknowledge that most companies like to continually reinvent the wheel.

Additionally in their long and evidently passionate views about the topic, the open-source Atheros developers are set to classify crap drivers as those that do not prioritize code readability and long-term maintenance, do not consider an ecosystem for reinventing the wheel on fixing issues, branching hell, the staging area is tainted crap, and that even good drivers can become crap drivers through evolution. Their advice? "Move on, adapt fast, evolve, accept criticism."

After this, Luis R. Rodriguez and Adrian Chadd are set to talk about driver licensing, which comes down to being a call for permissively licensed driver where the code can be shared between operating systems as non-Linux GPL drivers can be a pain in the ass. It's also pointed out that GPL Windows drivers requires MinGW for building (the license for using Microsoft's Windows Device Driver Kit isn't clear for usage on GPL driver source-code) to avoid using the Microsoft DDK. "Better use a fully permissive licensed Linux drivers, share with BSDs."

Latest Articles & Reviews
  1. Sub-$20 802.11n USB WiFi Adapter That's Linux Friendly
  2. The Lenovo T450s Is Working Beautifully With Linux
  3. Linux 4.0 SSD EXT4 / Btrfs / XFS / F2FS Benchmarks
  4. Linux 4.0 Hard Drive Comparison With Six File-Systems
  5. Lenovo ThinkPad T450s Broadwell Preview
  6. How Open-Source Allowed Valve To Implement VULKAN Much Faster On The Source 2 Engine
Latest Linux News
  1. Debian 8.0 Jessie's Installer RC3 Released
  2. Features Thus Far For The Linux 4.1 Kernel
  3. Intel's Turbostat Adds Skylake Support In Linux 4.1
  4. Microsoft's Open-Source Group Merges Back Into The Company
  5. EXT4 In Linux 4.1 Adds File-System Level Encryption
  6. Open-Source Ardour 4.0 Audio Software Has Big Improvements
  7. Linux-Powered Endless Computer Raises $100k+ In A Few Days
  8. GCC 5.1 RC2 Arrives, GCC 5.1 Planned For Next Week
  9. F2FS For Linux 4.1 Has New Features & Fixes
  10. Phoronix Server Upgrade This Weekend: Dual Haswell Xeons, 96GB DDR4
Most Viewed News This Week
  1. Nouveau: NVIDIA's New Hardware Is "VERY Open-Source Unfriendly"
  2. Linux 4.0 Kernel Released
  3. Linux 4.1 Brings Many Potentially Risky x86/ASM Changes
  4. Microsoft Announces An LLVM-Based Compiler For .NET
  5. VirtualBox 5.0 Beta 2 Released
  6. KDBUS Is Taking A Lot Of Heat, Might Be Delayed From Mainline Linux Kernel
  7. LibreOffice 4.5 Bumped To Become LibreOffice 5.0
  8. Mozilla Start Drafting Plans To Deprecate Insecure HTTP