Posted by: Anonymous
on August 04, 2008 08:26 AM
I don't know who this Olivia is, but she seems misguided. Or perhaps whoever's putting words in her mouth is :-)
There's little ethical difference between denying customers control over their hardware. It makes little difference if it's accomplished through Operating System Software or through software that's pre-loaded by the vendor into non-volatile storage on the device itself. If it can be modified, and the vendor benefits from that, why shouldn't the benefit be extended to the customer as well? The only difference I can see is that, by moving the software to the operating system, the vendor gets even more benefit, out of not having to put in the non-volatile memory, and can also attach a EULA to the software that the user must agree to before being entitled to use the device. This EULA may create other ethical, moral and social issues, of course.
The narrow view of firmware as "software that doesn't run on the main processor" won't last very long. More and more workloads are being pushed onto co-processors (crypto, TCP offloading, GPUs, parallel processing, SoC with heterogeneous cores, etc), and if we were to readily sacrifice our freedoms just because some piece of software doesn't run on the "primary" CPU, we'd soon find out a majority of the essential software on a system will be non-Free Software, and we might even not have a "primary" CPU to run our Free Software on.
As for the alleged complications, that's a red herring. There are pieces of Free firmware in the kernel today, and they don't complicate things one iota. The source code is there, and so is the object code compiled with the suitable tools. I don't see why carrying the source code and the permissions along with this object code, so that people can modify it and maintain it should they want to, is any more complicated than whatever it is that the vendor does to create and publish the firmware in object code form only. Of course the vendor is at an advantage if the vendor refrains from divulging specifications to the hardware. We all know how painful that is. Why some people regard lack of such information as a problem for drivers, and not for firmware, is beyond my comprehension.