Practical Technology

for practical people.

Driving the Linux drivers

| 0 comments

One of the great Linux myths is that it doesn’t support modern hardware. What nonsense! I’ve been finding for years that it’s the newer Windows desktops that don’t support equipment.

To make sure that Linux supports hardware, Greg Kroah-Hartman, a Linux kernel developer and an engineer at Novell, started a project, the LDP (Linux Driver Project), for open-source developers to create hardware drivers for free for companies. You don’t even have to reveal your precious proprietary secrets to the world. The programmers will keep those secret.

It’s been a very successful project. Last year, at the Linux Foundation conference, Kroah-Hartman said, “LDP) is alive and well, with over 300 developers wanting to participate, many drivers already written and accepted into the Linux kernel tree, and many more being currently developed. The main problem is a lack of projects. It turns out that there really isn’t much hardware that Linux doesn’t already support. Almost all new hardware produced is coming with a Linux driver already written by the company, or by the community with help from the company.”

It’s only gotten better since then. Kroah-Hartman released a report today in which he summed up where the project has been in the last year and where it’s going.

First, “Goal one (write drivers) has been very successful. Myself and many other members of the LDP have written new drivers for a wide range of different hardware devices, and gotten them merged into the main kernel tree. Several more are currently under development and we are averaging about 2 queries a month for different drivers from different companies.”

Next, “Goal two (educate people) has been reasonably successful. While working with many companies, we have helped them become maintainers of their own codebases within the kernel, integrating them into the main kernel development process, allowing themselves to control their drivers and direction for their Linux support much easier.”

Finally, “Goal three (work in the open) has succeeded even better than I had expected. At the Linux Kernel Summit last year, the drivers/staging/ tree was created, allowing us a place within the main Linux kernel tree for drivers to be merged that were not yet of the high kernel quality standards. This has allowed many users the ability to use their hardware with Linux much earlier than previously possible, and it has allowed a common place for the community to contribute patches and fixes for these drivers. This has alleviated the need to hunt over the Internet for various drivers.”

Kroah-Hartman added, “The staging tree has also provided a place for developers wishing to get into Linux kernel development to easily help out and start working on code.” I’ll add that if you’re a programmer adding ‘device driver developer’ on your resume is always a win.

Looking forward, Kroah-Hartman plans simply to keep on keeping on.It’s worked so far.

To be honest, device drivers, on any platform, are always moving targets. And, while you can get basic functionality from almost any device, getting the fancier stuff can be a real challenge.

In particular, all-in-one units that combine multiple functions into a single box, remain problem children. Getting any single function to work isn’t a problem, co-coordinating all of them, that’s not so easy. In no small part, that’s because what people want isn’t just a working fax/printer/scanner, they want the front-end software that lets you manage all that functionality.

That’s a problem, which will only be solved when hardware companies start writing more programs for Linux desktop users. With the rise of Linux netbooks, though, this issue too will be addressed.

Before closing though let me say that this is not just a Linux problem. I, and many others, have endless troubles with multi-function devices on Macs and Windows PCs. In particular, I’ve found that a machine which will work great with one version of Windows will have fits with another version and I’ve found the same thing with Macs operating systems. Regardless of your operating system, we could really use better device support all-around from the vendors.

A version of this story first appeared in ComputerWorld.

Leave a Reply