Re:Booting ARM Linux the standard way
by garaetjjte on Wednesday March 09, 2022 @07:43PM
(#30621912)
U-Boot can provide basic UEFI environment. Hardware description is another thing, either ACPI or DeviceTree can be used.
Attached device enumeration and boot firmware are somewhat orthogonal concerns; though certain ARM standards for various boot certifications ("ServerReady") do, in fact, require ACPI. But for mobile phones there's no need for it. You can just use a device-tree for the system and be done with it. (And yes, there are a lot of device tree files needed for all the devices, and while "self describing" would be nice it's ultimately a lot easier to just "have a lot of small files")
U-boot is very simple and very good at booting device-specific OS images.
What it fail at is providing abstractions and interfaces to provide to device-agnostic images so that they can boot without being tailored to a specific piece of hardware.
Which is why most Rpis are running Raspbian, not Debian.
For better or worse UEFI solves this and allows you to boot a plain Debian ARM64 ISO on any ARM64 machine with UEFI-compliant firmware.
Just like you (of course!) can on a regular PC. That’s where we need to get with ARM too. Make them work just like regular PCs.
Aarch64 has this solved in user-space. Now we need to get booting fixed too.