[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Why firmware generally won't be Free Software

Matthew Garrett wrote:

Non-free code in flash is no more or less a problem than non-free code on disk.
Except that we have to distribute it. If the manufacturer is so concerned about their code that they can't disclose its source, they should hide the code on the device, below the bus interface where we don't care about it.

We shouldn't be encouraging manufacturers to make their products more
expensive by putting it in flash - we should be encouraging
manufacturers to open the specifications so we can implement free
versions, or encouraging them to open the firmware in its entirity.

It is to the Free Software community's advantage to ask only for bus-level programming information rather than to ask for firmware to be opened. We have enough trouble convincing manufacturers to make it possible to drive their devices with Free Software. By establishing a bus-level demarcation between the realm of Free Software and the manufacturer's copyrighted property, we can give them the confidence that revealing driver details will not allow other manufacturers to clone their devices.

If we ask for the embedded programming in the devices to be open as well, we are essentially asking for the hardware design below the bus level to be opened. This is fine for a restricted subset of vendors that are designing explicitly for Open Source such as GNURadio and OpenCores. But most manufacturers won't go for it.

In addition, embedded programming is not like the kind you're used to. In general an error in a Free Software program can cause loss of data, and the damage ends there. This is only exceeded in some device drivers, but embedded programming generally is not so protected - certain kinds of errors are much more likely to cause permanent physical damage to the device.



Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply to: