12-14-2019, 09:06 PM
Quote:Hi @z4v4l, for UEFI I think completeness is best defined by the ability to accomplish useful tasks, such as booting an installer from SD card and installing a (working ) OS to eMMC.I don't want to argue in vain on the topic of what is the best measurement for the completeness of a standard implementation, but what you show above as an example is what uboot exactly lacks to acomplish by means of its UEFI part. because what you described, does require Boot#### variable and Co support. I mean if one would want to install the OS through the UEFI environment mechanism. we weren't about grub or any other addons. if an implementation is complete/comformant, then it lets you do what you described just by means specified in the spec. uboot doesn't have Boot Manager at all.
Quote:Ultimately the minimum feature set needed to be UEFI complaint is surprisingly small (and, with the latest spec update, includes the option to return EFI_UNSUPPORTED for all runtime services) and I think it is better to measure "completeness" in what percentage of *use-cases* work rather than what percentage of *features* are implemented.you are very optimistic about the UEFI requirements "minimalism". namely, the aforementioned NVRAM variables are defined and required, - without them it's impossible to install an OS, the UEFI way. the fact linux "can" do something with grub is kewl, but it's not UEFI, an OS that relies on the latter and gives no sh1t about grub would fail to install. I realize, an OS for PBP means linux only so far, but it may change (hopefully
As a concrete example personally I would prioritize support for the eDP panel over support for setting non-volatile variables (neither of which is required to be compliant). This is because multiple Linux installers can install a bootable OS on UEFI systems where EFI_RUNTIME_SERVICES.SetVariable() is not implemented but interacting with grub via the serial port is a lousy user experience. To be clear SetVariable() is a good thing to implement but for my own hacking it is not on the radar yet.

ANT - my hobby OS for x86 and ARM.