On Thu, Mar 13, 2014 at 09:41:32AM +0400, Andrey Borzenkov wrote: > > > 3. If question 2 were true, how to solve this problem? Do I have to tweak > > > zImage to PE format? > > > > The answer to all three questions is actually the same: > > > > You are correct that load_image/start_image require a valid EFI > > application. > > Is it something AArch64 specific? On x86 grub can load native vmlinuz; > is it not possible on AArch64?
The decision was made to (at least for the time being) keep the boot protocol between UEFI and the Linux kernel closed. Hence, while an Image (no zImage on AArch64) loader could be implemented for AArch64, the booted kernel would not support runtime services (and have some other limitations too, since the configuration tables would be inaccessible). > I mean, it is fine to rely on EFI, but > then you at least need to rename "linux" into "linuxefi" to match > existing x86 convention, otherwise it is extremely confusing. That's not a convention, it's a workaround. A workaround for the x86 UEFI support being held out-of-tree[1], and hence not possible to integrate with the core Linux loader. Debian/Ubuntu support using "linux" and distinguish between methods by checking for an MZ header. This to me is cleaner than having a separate command, when the actual config file/command line interfaces remain 100% compatible. The arm64 linux loader does this check - it just does not currently implement an Image loader. If we expect a U-Boot port for arm64, then such a loader will need to be added. / Leif [1] We need to fix this. There is no need for the x86 UEFI stub support to be entirely entangled with the shim support. _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel