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

Reply via email to