Free Linux Kernel Driver Development FAQ 84
schwaang writes "The recent announcement by Linux Kernel Developer Greg Kroah-Hartman that 'the Linux kernel community is offering all companies free Linux driver development' seems to have stirred up some interest as well as some questions — see the Slashdot discussion about the announcement. Greg K-H addresses some of the questions raised here, and raises a few more, in a new Free Linux Driver Development FAQ on his blog. An excerpt: 'Q: Are companies really going to do this? A: Yes, already we have received a number of serious queries from companies about producing Linux drivers for their devices. More information will be available later when details are firmed up."
Sweet (Score:5, Insightful)
Re:What we really need (Score:4, Insightful)
What we want - and what this process does - is to get them to release enough information that a driver can be written and incorporated upstream into the kernel so that Linux supports their hardware out-of-the-box. This bypasses all the "critical mass" problems because they don't have to pay for the development costs, and negates the need to supply drivers with the hardware. How can they lose?
Not entirely true either (Score:5, Insightful)
Now, some manufacturer will be approaching the kernel team and offering the specs. The kernel team will probably pick an active developer who wishes to do it. Interestingly, manufacturers will be more likely to bring in alpha (or beta) hardware to have the drivers built BEFORE going to market. Once they figure out the sales potential from Linux, then they will be more likely to develop the drivers in-house.
Re:how do these developers get paid? (Score:2, Insightful)
Then you have to try and find yourself a job where they let you do kernel development, if your good enough then all you have to do is shout for a new job and someone will pick you up.
Unless your really good and dedicated your going to have a hard time getting paid for developing kernel drivers.
Yes it's always done like that mostly, but.... (Score:4, Insightful)
Yes, but... Who told the hardware vendors about that? :-p
Someone finally did, explained the benefits, and got an amazing number of responses :-)
We take much for granted. When you meet a Linux newbie you'll notice how much "hidden knowledge" we have. Who the community is, that the FSF / GPL is, how the OS is layered in tools and front ends, what "compiling" does, how communication is done, how to find answers for problems. Linux newbies are not aware of this. The same can be said about hardware vendors.
Even if a vendor jumped in a random channel, the average response is "Open Source it". We understand the meaning and advantages of that approach. They only think "help, I must give away my code". It was about time someone stepped up to shed some light on these matters.
Re:liability? (Score:3, Insightful)
I think the real point in those situations is "if it goes wrong I can put the blame on a big company the PHB has heard of, otherwise it will be my fault".
Re:What we really need (Score:5, Insightful)
You're kidding yourself - I have used, and continue to use - a number of closed source binary Linux device drivers acquired from 3rd party manufacturers. The real reasons you don't see Linux device drivers shipping with hardware are:
It's worth noting that in many cases Microsoft produces or buys drivers for hardware. thereby obviating the [percieved] need for the manufacturer to spend much effort on any OS drivers, let alone one as arcane as a *nix driver with some hippie "licensing" scheme...
Also, if a device is designed to an existing h/w spec utilitized by M$, again - no driver needs to be produced by the h/w manufacturer.
It's all about margins, market share, ignorance, and prejudice. The relative openness of the Linux systems has nothing to do with it, nor does your imagined inability of Systems other than "Solaris and Windows" to dynamically link a loaded binary module. Futhermore, I am unaware of any consumer-grade h/w device which has Solaris OS driver support, which does not also have support under Linux.
The fact that you and/or your shop have never so much as looked at the Linux OS to a degree sufficient to producing a device driver for it is obvious from your posting, so please: Sit down, and STFU until such time as you have poked around a bit and actually know someting about what you're talking about - you've forced me to waste an unacceptable amount of bitwidth trying to clear the smoke you've blowing in front of the mirrors...
Re:Sweet (Score:5, Insightful)
Linux users are definitely consumers. Believing that having the basic functionality of operating your computer for free isn't about exiting the market as a consumer. It's along the lines of how you should be able to operate your television for free. You don't need cable, satellite, or any product separate from the equipment itself for your TV to function. You can buy a TV, watch DVDs, tapes, home videos, set it up as a security monitor, or use it just as speakers for an audio tape player, whatever you want to do with it.
Up until Linux, if you bought computer hardware, it was a dead box unless you also paid for an operating system, of which the only real choice was Windows. You couldn't use the hardware you had bought. You had a computer that couldn't compute anything. No matter how small your needs were, even if the only thing you ever needed to do was create plain text files, you had to pay $90+. With Windows XP Professional, it should burn any purchasing manager to think about paying $300 for a pinball game and another half dozen games, movie maker, media player, and various libraries and functions to support those applications, when the reason the computer is needed may not ever involve any of those. Whether or not those applications are needed you must pay for them. Enter Linux.
It's a misnomer that Linux users are cheapskates. Linux users will pay just as much cold, hard cash as the next guy for applications and products that fill his needs, they're just not willing to pay for peripheral garbage that has no value to them. As a Linux user, I've personally paid $4500 for an IDE/toolkit.
There are many Linux users who want to be consumers, and would gladly pay for things like 3D Studio Max, Photoshop CS2, etc. but those things aren't being offered to Linux users. Linux users are consumers lacking producers. We might have money but, for some reason, a lot of companies don't think a Linux user's money spends like the other kind, which is a shame because companies like Google have a lot of Linux money to throw around.
Basement-bound Linux users are no different, eventually they become purchasing managers, company owners, or hobbyists who build up some cash and want to spend it on something. If someone makes a decent offer, they'll fork over the cash just like anyone else.
monkey? (Score:2, Insightful)
Re:liability? (Score:4, Insightful)
Guess what. Odds are, it'll still be your fault. Your fault for not getting the specs right. Your fault for not working with the major vendor to make it work. After all, they're a big company and have hundreds if not thousands of other installations working right. Thus, if they all work and yours doesn't -- it is your fault.
The ONLY way you might get away with that is if some executive MANDATED you use a specific product, overriding your objections or advise to the contrary, and he is a known asshole in the company. Even then, it is still iffy.
And finally, even if it isn't your fault and you can successfully blame someone else, you'll still get a bit of a reputation of "that guy who couldn't get it done".
Good luck!
Re:What we really need (Score:3, Insightful)
It probably is true that the Linux kernel's intentional lack of ABI compatibility has been a hurdle for some vendors who would otherwise produce a proprietary kernel driver for their hardware. It hasn't stopped nvidia from doing that, and it hasn't stopped that company that sells winmodem drivers, among others.
But really, closed-source drivers are bad for so many reasons that pretty much everyone here already knows about (unmaintainable, un-redistributable, can't be reviewed for security or other trust issues, can't be improved upon). Plus Linux has been able to grow very rapidly, and an ABI-compatibility constraint would have hampered that. So enabling closed-source drivers is a big lose on many fronts.
Sure there are going to be a few vendors who feel they absolutely cannot open their drivers and cannot open their hardware specs enough to let the community produce an open driver. There are several different reasons a company might take this position, some more valid than others (given that binary drivers can be disassembled by a competing vendor anyway).
My bet is that as these vendors see other companies having a good working relationship with the kernel community, more of them will see that the benefits of opening (shifting some development/support/maintenance/liability costs outside of their own budgets, having access to the increasing Linux market) outweigh the benefits of keeping their specs closed.
So anything Greg K-H & other kernel devs & the OSDL/Linux Foundation do to reach out to these vendors and provide a process that they can understand and trust deserves kudos, IMHO.