From jon@cs.kuleuven.be Tue Nov 5 14:38:59 2013
Date: Tue, 5 Nov 2013 14:38:58 +0100 (CET)
From: Jon Sneyers <jon@cs.kuleuven.be>
To: licensing@fsf.org
Subject: OpenPandora Respects Your Freedom?
Dear FSF,
I am a Free Software enthusiast and an OpenPandora hacker. I am not myself
part of the OpenPandora Team. I just like the device a lot. See the
Wikipedia page for more information about the device:
http://en.wikipedia.org/wiki/Openpandora
Recently I found out about the "Respects Your Freedom" certification. I
think this certification would possibly be suitable for the OpenPandora
project and/or its successor. On the Pandora forum, there is an ongoing
discussion about this (initiated by me; my nickname is "_wb_"):
http://boards.openpandora.org/topic/14049-respects-your-freedom-certification/
While I think the general philosophy of the FSF and the OpenPandora
largely overlap, we of course also have to look at the details. Looking at
the general criteria for RYF hardware, there are some potential issues.
This email is meant to get some clarification.
Potential issue 1: GPU driver
--------------------------------------
"All the product software must be free software. The product software
includes all software that the seller includes in the product, or provides
with the product, or recommends for use in conjunction with the product,
or steers users towards installation in the product."
The OpenPandora ships with pre-installed software that is based on the
Angstrom GNU/Linux distribution (
http://www.angstrom-distribution.org/).
To my knowledge, all the shipped software is Free Software, with the
exception of a binary blob GPU driver (the device has a TI OMAP3 SoC,
which includes a PowerVR SGX GPU) and some firmware that gets uploaded to
the wifi chip.
"However, there is an exception for secondary embedded processors. The
exception applies to software delivered inside auxiliary and low-level
processors and FPGAs, within which software installation is not intended
after the user obtains the product. This can include, for instance,
microcode inside a processor, firmware built into an I/O device, or the
gate pattern of an FPGA. The software in such secondary processors does
not count as product software."
As far as I understand, the above can be interpreted to mean that the
non-free wifi chip firmware can be forgiven (since it does not run on the
CPU), but the non-free GPU driver is still problematic since part of the
driver runs on the CPU.
Reverse-engineering the PowerVR has been on the FSF high priority list for
quite a while now. Sadly not a lot of progress has been made so far.
If a free driver would exist for the PowerVR, that covers all or most of
the functionality and has a comparable performance to the non-free driver,
I am sure that the OpenPandora team would ship the free driver instead
of the non-free driver. But at the moment they do not have that choice.
Question 1: Would it be necessary to remove the binary blob GPU driver
from the OS shipped with the product in order to get the RYF
certification?
If the answer is yes, then the device would effectively not have a GPU
(since there is no free alternative), which is probably not acceptable to
the OpenPandora Team.
Please note that the OpenPandora is a small niche device, produced by
amateurs. They have to use a SoC that exists and can be bought in low
qualities (thousands, not millions). The options are very limited, and
they do not have the leverage to demand the GPU drivers to be released as
free software.
This is also likely to remain a problem for a possible Pandora successor;
they are currently considering to use the TI OMAP5 SoC which also has a
PowerVR GPU. There are other SoCs with a GPU where reverse engineering has
made more progress (e.g. Mali), but those are either not suitable (e.g.
consume too much power) or not available in low quantities.
"We want users to be able to upgrade and control the software at as many
levels as possible. If and when free software becomes available for use on
a certain secondary processor, we will expect certified products to adopt
it within a reasonable period of time. This can be done in the next model
of the product, if there is a new model within a reasonable period of
time. If this is not done, we will eventually withdraw the certification."
The above corresponds to the vision of the OpenPandora project as well. If
and when a free driver for the PowerVR GPU becomes available, it will be
embraced by the OpenPandora community and the OpenPandora itself would
probably even be an ideal development platform for such a
reverse-engineering project.
Potential issue 2: steering towards installation of nonfree software
--------------------------------------
"By way of explanation, a general-purpose facility for installing other
programs, with which the choice of programs to install comes directly from
the user, is not considered to steer users toward anything in particular.
However, the product suggests using the facility to install certain
programs, that is steering users towards those programs."
On the OpenPandora, there are two main facilities for installing software.
One is based on opkg, a package manager like Debian's APT. It is used
mainly for updates to the core OS, and as far as I know all the packages
in the default repository are free software.
The other one is a community-maintained software repository known as "the
repo" (
http://repo.openpandora.org/), where anyone can upload software of
any kind. It contains mostly free software, but also closed-source
freeware and some closed-source commercial software.
Question 2: I assume that this is fine w.r.t. RYF certification, right?
Potential issue 3: advertizing nonfree software
--------------------------------------
"Other Misleading Endorsements
Companies awarded RYF certification for a given product, must not
distribute any product-related materials with endorsements or badges to
proprietary software, such as "Works with Windows" or "Made for Mac"
badges, because these would give an appearance of legitimacy to those
proprietary packages, and may make users think the product requires them.
However, we don't object to clear factual statements informing the user
that the product also works with specific proprietary operating systems."
The Open Pandora Team advertizes that the device can also run Android,
and they show screenshots and videos of the device running both free and
nonfree software (including commercial games and emulators emulating
nonfree roms)
Question 3: Does this count as endorsing proprietary software?
Potential issue 4: terminology
--------------------------------------
"Specifically, the seller must use the term "GNU/Linux" for any reference
to an entire operating system which includes GNU and Linux, not "Linux" or
"Linux-based system" or "a system with the Linux kernel" or any other term
that mentions "Linux" without "GNU". Likewise, the seller must talk about
"free software" more prominently than "open source.""
Currently the OpenPandora Team often uses the word "Linux" without "GNU"
when referring to the OS, and they tend to use the words "Open Source"
more often than "Free Software". I suppose that is something that would
need to change. Sometimes they do already get it right though, e.g. the
title of this subforum:
"Pandora OS (SuperZaxxon GNU/Linux)
Everything about the standard GNU/Linux-Distribution on the Pandora."
http://boards.openpandora.org/forum/41-pandora-os-superzaxxon-gnulinux/
Potential issue 5: bounty program
--------------------------------------
"Bounty program
The FSF and the seller will jointly set up a bounty program to encourage
the public to report any failure to follow these conditions, with a view
to correcting the failures. In this program the FSF will give a small
reward to the first person to report any compliance problem in the product
previously unknown to the FSF. The FSF will forward the reports to the
seller."
Question 4: Is this bounty reward paid for by the FSF or by the device
manufacturer? The OpenPandora Team probably does not really have a budget
for this.
Thanks in advance for your answers!
Jon Sneyers