Linux driver-development project bears fruit

Greg Kroah-Hartman, who leads the development of several Linux kernel subsystems including USB and PCI, acknowledged that his January offer of free Linux device driver development was "marketing hype" -- but said it has brought companies and developers together anyway.

In a talk at today's FreedomHEC, the Linux device driver "unconference," Kroah-Hartman said, "We have had 12 companies say 'Yes, please.'" One resulting driver is already in the kernel, and five are in progress, he said. About 80 people have signed up to help with drivers, and in an unusual twist for an open-source project, not all are developers. Some volunteers are project managers.

"A lot of people volunteer their management skills and want to help the developer and the company," Kroah-Hartman said. Although one large reseller "wants everything they make supported," Kroah-Hartman said, most of the companies involved are small and seek drivers for niche products including a serial-over-TCP controller for remote telescopes, a professional video product and several data-acquisition cards.

The development project now has its own wiki at linuxdriverproject.org. Companies participating in the Linux Driver Project must commit to include the final driver in the mainstream kernel under the GNU Public License (GPL), but they can also make the necessary documentation available through the Linux Foundation under a nondisclosure agreement (NDA). Most Linux drivers today are written under NDA, Kroah-Hartman pointed out, because they're done by employees of the manufacturer under confidentiality agreements.

While one developer of a competing open-source operating system has criticized the NDA approach, developers are free under the GPL to use the Linux driver as the documentation for a new one as long as they don't copy the actual code. "The drivers are generally better-written than the specs," Kroah-Hartman said.

While the number of drivers included with the kernel continues to increase, Linux developers have no desire to exclude a driver just because it's used by few customers. Kroah-Hartman said he has accepted drivers into the kernel for which only one unit of hardware exists in the world. Having many drivers in the kernel helps developers spot situations where "you're unique just like everybody is" and move common functionality out of individual drivers to the core, he said.

"We add 2,000 lines of code every single day and modify 1,500 lines," said Kroah-Hartman, who added that on average, Linux drivers are one-third the size of drivers for other operating systems.

This story, "Linux driver-development project bears fruit" was originally published by LinuxWorld-(US).

Copyright © 2007 IDG Communications, Inc.

7 inconvenient truths about the hybrid work trend
Shop Tech Products at Amazon