Ward Vandewege wrote:
On Sun, Nov 26, 2006 at 11:05:27PM +0100, Segher Boessenkool wrote:
So, did you get a (small) update from the vendor, or did you pull off the semi-impossible task of rewriting the thing from scratch :-)
Sure, we got the vendor patch. But I'm glad we were not the *first* people to run into this problem. It would have taken days or weeks for the vendor to do something, I'm sure.
True, vendors might take a little time to make a patch, but in the long run, who would have done a better job of it? The guys who've read the docs, and are rushing to make something work, or the guys who built the drives themselves, and make full-time jobs of doing it? Besides, if you'd just set up these hard drives, you must've been working without them in the past, so I can't imagine that another couple weeks would have resulted in a catastrophe.
This doesn't solve a _problem_. Oh, and there are plenty of binary patches you can find around the web that do such things. They typically void your warranty *for a good reason* though.
We don't really care about that, though, right :) Installing LinuxBIOS voids the board vendor's warranty too, I'm sure.
LinuxBIOS is based off usually well-documented chipsets, and the BIOS itself is designed to be built by the vendor. Hard disks and ATAPI drives are usually assembled and programmed by the same people, so providing anyone outside the company with documentation on how they work isn't necessary. Video cards and NICs might be a different story.
And there is the whole Free as in Freedom aspect of course. I think 'because we want Free software' is a really good reason.
It would be nice to have, yes, but I think right now we have much bigger problems to solve first.
Sure. This whole thread is pretty hypothetical. I'm just answering your question, pointing out a few reasons why free firmware for devices might be a good idea.
No offense or anything, but I don't think you really have. Aside from the reference to the server, you haven't given much for reasons.
Also, just look at those Linksys wireless routers (WRT54G). There's a whole ecosystem out there - people are doing things with them that were *never* anticipated by Linksys.
Yes. And none of those new things have anything to do (directly) with firmware changes.
Sure - my point was that opening up a black-box 'device' can lead to some pretty amazing innovation.
A linksys wrt54g is basically an embedded computer, with a TI AR7 (MIPS) cpu and a very specific purpose in life, it was inevitable that someone would figure that out and create more software to run on it. A PC's internal hardware doesn't have a dedicated CPU, and it's not designed to run software...it just, works.
Basically, having Free firmware for things like hard drives could allow some amazing innovation.
...and will lead to *lots* of bricked drives ;-)
Maybe video cards or network cards would be a better example here. But, yes.
I remember when I got my first new video card, a Radeon 9500 (to replace my Voodoo 5). There was a whole fiasco about how you could simply flash this card with a 9700's bios and open up the 4 pipelines that were locked by the manufacturer for 8 total, like the 9700. OTOH, in many cases, those 4 pipelines were locked for a good reason: at least one of the pipelines was no good. Now, in some cases (roughly 50% when I got mine) people lucked out and got a 9700 Pro for a 9500's price. Had the BIOS been open source though, it would have made the lock mechanism much easier to spot, and so ATI would have found another way to lock the pipelines, like the design change in later models. So, no free beer, for anyone.
I'm not convinced you can really; esp. not legally. But yeah, that "geek factor" would make me want to do it, sure -- except I see a HDD as 100% a black box with no internals that I care about (or want to care about). I also don't feel like reprogramming the ucode on CPUs, or even the ucode on a flash chip's internal controller, etc.
But your network interface? Video card?
Thanks, Ward.
I agree with Segher. LinuxBIOS offers much faster boot times and greater flexability than a propriety BIOS. I can't imagine getting nearly the same gain from a hard drive, cdrom, or even NIC. Yes, I might be able to make my cd burner run at 32x instead of 24x...whoop-de-doo. Heck, maybe I could even make my 10/100NIC work at 1000MBit, I'm sure that would make my 3MBit DSL so much faster. And all these menial little improvements for creating firmware for something that is designed and programmed internally, so public docs are all but nonexistant.