How is the free firmware for the Raspberry progressing?
Raspberry Pi computers require a piece of non-free software to boot — the infamous raspi-firmware package. But for almost as long as there has been a Raspberry Pi to talk of (this year it turns 10 years old!), there have been efforts to get it to boot using only free software. How is it progressing?
Michael Bishop (IRC user clever
) explained today in the
#debian-raspberrypi
channel in OFTC that it advances far better than
what I expected: It is even possible to boot a usable system under the
RPi2 family! Just… There is somewhat incomplete hardware support:
For his testing, he has managed to use a xfce environment — but over
the composite (NTSC) video output, as HDMI initialization support is
not there.
However, he shared with me several interesting links and videos, and I told him I’d share them — there are still many issues; I do not believe it is currently worth it to make Debian images with this firmware.
Before anything else: Go visit the librerpi/lk-overlay repository. Its README outlines hardware support for each of the RPi families; there is a binary build available with nixos if you want to try it out, and instructions to build it.
But what clever
showed me that made me write this post… Is the
amount of stuff you can do with the RPi’s VPU (why Vision Vector
Processing Unit and not the more familiar GPU, Graphical Processing
Unit? I don’t really know… But I trust clever
’s definitions beyond
how I trust my own 😉) before it loads an opearting system:
- 2D accel, using the closed firmware (regular
raspi-firmware
) - Similar to the above, but running on the VPU, with no firmware blobs involved. Due to the lack of HDMI initialization code, this is filmed from an NTSC output. The garbling you can see happens when too many sprites “collide” in the same rows.
- This one really blew my mind: it shows Linux booting with the open firmware, while the VPU performs 2D and 3D animations in the background
- Just a 2D+3D demo, with no operating system involved
There’s not too much I can add to this. I was just… Truly amazed. And I hope to see the remaining hurdles for “regular” Linux booting on this range of machines with purely free software quickly go away!
Packaging this for Debian? Well, not yet… not so fast ☹ I first told
clever
we could push this firmware to experimental instead
of
unstable
, as it is not yet ready for most production
systems. However, pabs made some spot-on further
questions. And… yes, it requires installing three(!) different
cross-compilers, one of which vc4-toolchain, for the
VPU is free software, but
not yet upstreamed, and hence is not available for Debian.
Anyway, the talk continued long after I had to go. I have gone a bit over the backlog, but I have to leave now – so that will be it as for this blog post 😉