From The Register:
Microsoft opens sources ThreadX under MIT license
ThreadX was quite pervasive, though. Microsoft claims 12 billion devices run it, and you might own some of them. For a while it powered Intel's on-chip Management Engine. It is also the firmware that controls every Raspberry Pi bigger than the Pi Pico. On the Pi 1, 2 and 3, it's the file on your Pi's SD card called bootcode.bin
; in the Pi 4 and 400, it's called start*.elf
. Even though it's on GitHub and included in Debian, it's a proprietary "blob" (Binary Large OBject). It's a metaphorical sealed black box which doesn't even contain Arm code: instead, it runs on the Pi's VideoCore GPU. This is the primary device, the part that boots up the Pi and controls its hardware: the Arm cores are slave devices to the VideoCore GPU.
(...)
At this point, only the current version is on GitHub, and we don't see any trace of a VideoCore version. Although the GPU drivers have long been open source, the firmware never was, and attempts to write an independent FOSS version were never completed, for reasons explained on the project page. Now, there is at least some hope that the Raspberry Pi Foundation might be able to get permission to release the source code for its version. As of last year, the foundation had sold over 46 million of the things, and if the whole software stack were open source, that would make them even more appealing for a lot of people.
We may finally see full open source freedom, but does this now lie with Broadcom and Raspberry Pi to finally let it roam free?
The ThreadX code is now on github as Azure RTOS ThreadX.