Intel Accused of Being an "Open Source Fraud"
Binary-Blob writes "Kernal Trap has an article up in which some key OpenBSD developers accuse Intel of being an open source fraud. The issue stems from the prevalence of firmware 'blobs' in open source projects, and OpenBSD's reluctance to use them unless they are distributed freely and without restrictions. Leading project creator Theo de Raadt offers that Intel should follow the example of other companies in the market: 'Intel must do this firmware grant in the same way that Adaptec, Atmel, Broadcom, Cirrus Logic, Cyclades, QLogic, Ralink, and LSI and lots of other companies have granted distribution firmware to be used by others.' He concluded by requesting that the open source community contact Intel to help get them to change their policies"
Intel is lying...
"Just download this firmware blob" is one level, then "just load this microcode". If you're using a Xilinx FPGA running a downloadable CPU core, should that be treated as yet another CPU (ie a sealed blob) or should the downloadable core be considered firmware/microcode? As we get more and more interesting hardware, the boundaries are only going to get more blurred.
Even regular CPUs have an interface (the instruction set etc) and their inner workings are sealed from the software developers.
Engineering is the art of compromise.
Why is it that this is one of the most popular arguments against Theo? I mean, sure it works under Linux, but Theo develops OpenBSD.
Next time I hear some Linux user going off about how some device isn't supported I'll just argue that "--correct me if I'm wrong-- this device already works in Windows."
Can I interject here and point out that none of you are actually on-topic?
This discussion is not about device drivers, it's about the "blobs" that contain things like firmware and the distribution licenses that come with them.
For the most part, OpenBSD is doing pretty well creating device drivers. Indeed, it does better than Linux in many respects: OpenBSD's ipw3945 driver, for instance, is fully self contained and doesn't require the ugly hacks involving user-space daemons that the Linux version does. The author of the OpenBSD driver reverse engineered the Linux driver, and did so in a way that wouldn't taint anything (he hacked the driver to write information about what was being sent to what registers and when, recorded this information, and then wrote his driver. His driver is 99% based upon the actions of source code he's never seen.)
The issue isn't writing device drivers. Most of the devices Theo is complaining about already work under OpenBSD. However, the only way to obtain some critical components, such as the firmware, is to navigate to a website, agree to a license, and download them.
This especially a PITA if you're trying to get a network device to work. You can't access the network without the blob, and you can't obtain the blob unless your network is up. Not impossible to solve, but an added cause of frustration for anyone who's been in this situation.
You are not alone. This is not normal. None of this is normal.