[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Questions about booting Linux kernel using AARCH64 GRUB
From: |
Andrey Borzenkov |
Subject: |
Re: Questions about booting Linux kernel using AARCH64 GRUB |
Date: |
Thu, 13 Mar 2014 09:41:32 +0400 |
В Wed, 12 Mar 2014 10:50:59 +0000
Leif Lindholm <address@hidden> пишет:
> 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.
>
Is it something AArch64 specific? On x86 grub can load native vmlinuz;
is it not possible on AArch64? 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.
> 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
> address@hidden
> https://lists.gnu.org/mailman/listinfo/grub-devel