Free Linux Kernel Driver Development FAQ
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."
This makes an awful lot of sense. Currently, a lot of hardware gets drivers but without the assistance of the companies. This way, consumers benefit (if you can call us basement-bound linuxers consumers) and the companies benefit by reaching more people.
Can users sign up for this? I've got some hardware I'd love Linux to support. :p
"We'll write free drivers for your hardware if only you release the specification" - isn't this the same that was always done in Linux kernel? Or is the issue only about signing the NDA to get the specs?
Interestingly, all the frequently asked questions were asked by random linux users and developers. It seems that device manufacturing companies aren't making any frequent questions at all!
Point your hardware vendor to the web site and ask them to participate. If you mean will someone reverse engineer your hardware, well they answer that question on the site FAQ and the answer is no.
Got Code?
A: Yes, the initial response to this was amazing, a measurable number of new Linux drivers will be created thanks to this program.
As per a Simpson's episode, I'm reminded that zero is a number. ;)
by EveryNickIsTaken (1054794) Alter Relationship
/precious/ secrets. Chances are that, the secrets are not *within the code* but developers need to know about them to implement the drivers.
Is it really that shocking that hardware manufacturers are interested in having drivers developed for free that would enable them to reach additional consumers?
Oh.. wait. It's Linux. So that means it's news. Yeah, right.
1. You must be new here.
2. As stated in the FFAQ:
Q: This is a lame publicity stunt, Linux development has always been done this way.
A: Well, the NDA program that we have set up with The Linux Foundation is new. But yes, other than that, this is exactly how Linux kernel development has been done. But it is good to point out exactly how it all works for those who are not familiar with how it works.
The main idea is to let companies know that it is possible to release hardware specifications in an NDA-esque way to kernel developers *without* having to publish their
Ubuntu is an African word meaning 'I can't configure Debian'
Just wondering, how do these developers get paid? I would love to develop kernel drivers, and I can, but it takes a lot of time, which I need to make money, so how do these "free developers" do that?
What we really need is for companies to provide Linux drivers on their own, and delivered with their hardware. I've wondered for years why most of them don't do that.
It's also a "critical mass" sort of thing. Once all hardware companies provide full support for Linux, then Linux will be in a position to truly be a mainstream replacement for Windows.
I'm sure their reasons have to do with perceived user base. But, how do we get them to support us without that "critical mass" of users? It's like the chicken and egg thing, and very frustrating!
Yes, this is not a lot different than the way device drivers have always been incorporated into the kernel. But having a willingness to work with NDAs of various companies MIGHT have solved the whole fiasco with Broadcom wireless chipsets (if you didn't think it was a fiasco, you didn't buy a iBook G4 the day they were released, May 2004, only to find out that you would be unable to use wireless on it for the next 2 years at least).
I don't know but I think that maybe such a system might have made the suits and lawyers with Broadcom comfortable enough to allow co-operation on a linux device driver... *sigh* would have been nice.
somewhere, on a Big Red Sign:
if(color==blue){speed--;}
Unfortunately a lot of companies seem totally unable to see the benefits of external contributors. They don't even see the point in getting drivers into the mainline kernel. Just take a look at this response from Cirrus Logic regarding their ep93xx boards:
- 2007/msg00026.html/
/C.M
http://www.freelists.org/archives/linux-cirrus/02
Looks like the in house coding team was bummed that Lennert Buytenhek did a better job on the port then their whole team. Ridiculous response!
/C.M
A free FAQ !
For starters, the norm to starting this process is that the hardware is out and somebody has an itch. Then they have to go to the hassle of getting the manufacturers specs, etc.
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.
I prefer the "u" in honour as it seems to be missing these days.
Mine works fine. What card do you have that does not work?
I prefer the "u" in honour as it seems to be missing these days.
How does the foundation handle liability issues? If a driver doesnt work as advertised, who gets the blame? What happens if a buggy driver fries the device in question?
The FA is an FAQ, FFS! Almost every question which has been brought up in the discussion is already in the FAQ because it's an FAQ, that's what it's for.
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.
The best way to accelerate a windows server is by 9.81 m/s2
How do they figure out the sales potential for Linux? Unless you sell a different version for Windows and Linux, you'll never know how many sales were to Linux users versus Windows users. If you have a download for the driver on your site and get 2000 hits, you could get some idea, but it could be 100 customers who download every minor point revision and make it look like 2000 customers, or it could be 20,000 customers, only one of 10 whom download from your site versus getting it from their distro or another location.
No, we don't need organizations to provide their own software because then they'll distribute proprietary software. We don't benefit from dependency. I don't need to give up my software freedom to make some device work with the Linux kernel. I don't need software which will go unmaintained because nobody who is willing to do the maintenance knows how it really works.
What we need are accurate published specs for all hardware. These specs should be published for all to see, with no legal restrictions. And the hardware should not need firmware to work (or that firmware should also be free software). I'd rather work around hardware bugs in driver code than become dependent on a binary blob. This way we can write our own software that works with the hardware, maintain the software ourselves in perpetuity, and recommend everyone go buy that specific make and model (thus giving that manufacturer or reseller more business).
I'm happy to recommend certain devices on this basis. I'll choose that hardware even if it's not the most efficient way to get some job done because I don't have to fear it will stop working when I upgrade my system or switch to another free software OS.
It's important to not take a defeatist attitude on this. Having viable machines without giving up our software freedom (which is the main thing that separates free software OSes from their proprietary alternatives) is important.
Digital Citizen
The announcement would likely get MORE response if it had been on an OSDL/Linux Foundation web page and signed by all of the major Linux players, rather than on a page titled "linux kernel monkey log". That said, I want Linux to succeed very much, and I think this is a good direction to take things.
CfkRAp1041vYQVbFY1aIwA== RV/hBCLKKcSTP5UFK3kqsg==
Hardware specs should have always been freely available. What did companies have to worry about? As the FAQ tells, it only means more sales or at worst, as many sales as if the specs weren't available. It costs them nothing and they have nothing to lose, they'd just have to say: "We have a new product, here are the specs, have fun". I wonder why they never did that on their own.
Now, this is even better because of the NDA of the specs of not yet released products, which means support from day one!
I agree. I'd like to see the OSDL/Linux Foundation put out a more "official" promotion of this (the corresponding NDA is on their site). Of course they can't promise to produce drivers for every USB-powered plastic dogpoop nightlight. But they can say "hey we've got a legal/business-speak process here if want Linux kernel drivers for your hardware, and we know how to answer your manager's questions".
Consider that you don't need a special driver for a particular brand of ATAPI CD-ROM drive, or for a particular USB Mass Storage Device. Heck, Windows has USB class drivers for Bluetooth devices, smart-card devices, hubs, HIDs (keyboards, mice, CueCats and such), mass storage devices, printers, PTP-protocol scanners and cameras, audio devices, modems and video devices. Linux has a variety of supported class drivers as well. There are, of course, more classes, and that's all just for USB devices.
Sure, there are a lot of corner cases and pathological hardware--I think video cards are the best example--but it's entirely possible and indeed desirable to support all kinds of devices in the kernel. Even if sometimes we have to say goodbye to one of them, it was worth it to have them around.
Laws do not persuade just because they threaten. --Seneca
Just a note: the trance vibrator driver is indeed in the mainline kernel; it's not in the "input" directory, but rather "misc", now, in case you were looking for it. Here it is. Amazing what they do with computers nowadays.
Laws do not persuade just because they threaten. --Seneca
Greg, thanks once again for your wonderful blog, but I'm afraid that the absence ofc id=17839388
Q: Are developers really going to do this?
indicates that you missed http://linux.slashdot.org/comments.pl?sid=219556&
Oh, it's exactly what you think it is. I wonder if anyone's written a driver to have it thump along with the bass beat of whatever music you're playing.
Laws do not persuade just because they threaten. --Seneca