Hi Leif, Thanks for your answering, that really helped me a lot!
I will enable CONFIG_EFI_STUB and try again. Best Regards, Cedric On Wed, Mar 12, 2014 at 6:50 PM, Leif Lindholm <leif.lindh...@linaro.org>wrote: > Hi Cedric, > > On Wed, Mar 12, 2014 at 11:00:43AM +0800, 林揆斌 wrote: > > I got some questions about the routine "grub_linux_boot" in > "grub-core/loader/ > > arm64/linux.c" > > from master branch of this repo: "git://git.savannah.gnu.org/grub.git" > and > > would like your help. > > The questions are as follows: > > > > 1. From my understanding, this routine uses bootservice->load_image in > line 274 > > and bootservice->start_image in line 297 to load/start the Linux kernel > (i.e. > > zImage), is it correct? > > Or it is actually loading something else? > > > > 2. If question 1 were true, does it mean that the Linux kernel should be > in PE > > format? Because > > bootservice->load_image requires the file to be in that format otherwise > it > > will return "UNSUPPORTED", which is the problem I'm facing now. > > > > 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. > > On (U)EFI platforms, Linux can be compiled with a built-in "stub" loader, > while at the same time remaining a valid bzImage-zImage/Image. The stub > loader is a PE/COFF EFI application. > The Linux configuration option is CONFIG_EFI_STUB. > > The support for doing this on arm64 is not yet in mainline Linux, but > we are hoping it can be merged for 3.15. If you want to use it before > then, support is in https://git.linaro.org/arm/acpi/leg-kernel.git. > > Best Regards, > > Leif >
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel