i.MX 8MQ system on chip in Librem 5 relies on Das U-Boot bootloader loading a binary distributed by NXP to initialize the RAM. The process of loading those firmware blobs into DDR PHY was described by Purism in detail.
This requirement is common for devices with DDR4 memory because it normally requires specialized hardware-specific initialization procedure for fine-tuning at boot time to reach higher speeds. Without that, devices either fail to boot, or run at some base RAM speed.
There are some exceptions. For example, RockPro64 used to require similar blobs too. However, Rockchip released some source code or documentation and the community reverse-engineered the blobs sufficiently to be able to boot without closed binaries in user-writable storage. It is now being applied to other devices with RK3399 system on chip too. Another example is Talos II and Blackbird from Raptor Computing Systems, where the microcode for DDR4 initialization was provided by IBM.
I got an impression that in both of those examples the chip supplier was in some kind of market situation that could pressure them to work with the community by releasing the code which they also had opportunity to release. The newer chips from Rockchip and IBM are back to requiring some closed firmware. Could NXP’s current situation be similar in any way? Does their primary focus on automotive and industrial applications affect it in any way?
How fair are the above observations? Is it unlikely that those blobs can ever be eliminated on Librem 5? Is there any expected future chip that may better fit Librem 5 requirements?
If the RAM firmware in Librem 5 becomes reverse-engineered, would it help only Librem 5 or some other devices too, such as iMX8MP-SOM-4GB-IND from Olimex, which uses i.MX 8M Plus? It was also used in some MNT products, but they moved to another chip. In other words, may there be a wider interest?
Finally, what arguments, besides freedom, could be in favor of freeing the code for those blobs? Are both potential security gains and improvements by the community questionable in this case?