grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Questions about booting Linux kernel using AARCH64 GRUB


From: Leif Lindholm
Subject: Re: Questions about booting Linux kernel using AARCH64 GRUB
Date: Wed, 12 Mar 2014 10:50:59 +0000
User-agent: Mutt/1.5.21 (2010-09-15)

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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]