diff options
author | Roy Franz <roy.franz@linaro.org> | 2013-09-28 11:44:21 -0400 |
---|---|---|
committer | Matt Fleming <matt.fleming@intel.com> | 2014-04-30 14:49:41 -0400 |
commit | 719e284369d23c3feb02d02ad58b3a516df47806 (patch) | |
tree | cedfd4cd2d4db935816b3a6f08da61d61b0c38d8 /Documentation/efi-stub.txt | |
parent | adaf5687846c25613d58c0a2f5d9e024547cdbec (diff) |
doc: efi-stub.txt updates for ARM
Update efi-stub.txt documentation to be more general
and not x86 specific. Add ARM only "dtb=" command
line option description.
Signed-off-by: Roy Franz <roy.franz@linaro.org>
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Acked-by: Grant Likely <grant.likely@linaro.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Diffstat (limited to 'Documentation/efi-stub.txt')
-rw-r--r-- | Documentation/efi-stub.txt | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/Documentation/efi-stub.txt b/Documentation/efi-stub.txt index c628788d5b47..26be7b02a164 100644 --- a/Documentation/efi-stub.txt +++ b/Documentation/efi-stub.txt | |||
@@ -1,13 +1,16 @@ | |||
1 | The EFI Boot Stub | 1 | The EFI Boot Stub |
2 | --------------------------- | 2 | --------------------------- |
3 | 3 | ||
4 | On the x86 platform, a bzImage can masquerade as a PE/COFF image, | 4 | On the x86 and ARM platforms, a kernel zImage/bzImage can masquerade |
5 | thereby convincing EFI firmware loaders to load it as an EFI | 5 | as a PE/COFF image, thereby convincing EFI firmware loaders to load |
6 | executable. The code that modifies the bzImage header, along with the | 6 | it as an EFI executable. The code that modifies the bzImage header, |
7 | EFI-specific entry point that the firmware loader jumps to are | 7 | along with the EFI-specific entry point that the firmware loader |
8 | collectively known as the "EFI boot stub", and live in | 8 | jumps to are collectively known as the "EFI boot stub", and live in |
9 | arch/x86/boot/header.S and arch/x86/boot/compressed/eboot.c, | 9 | arch/x86/boot/header.S and arch/x86/boot/compressed/eboot.c, |
10 | respectively. | 10 | respectively. For ARM the EFI stub is implemented in |
11 | arch/arm/boot/compressed/efi-header.S and | ||
12 | arch/arm/boot/compressed/efi-stub.c. EFI stub code that is shared | ||
13 | between architectures is in drivers/firmware/efi/efi-stub-helper.c. | ||
11 | 14 | ||
12 | By using the EFI boot stub it's possible to boot a Linux kernel | 15 | By using the EFI boot stub it's possible to boot a Linux kernel |
13 | without the use of a conventional EFI boot loader, such as grub or | 16 | without the use of a conventional EFI boot loader, such as grub or |
@@ -23,7 +26,9 @@ The bzImage located in arch/x86/boot/bzImage must be copied to the EFI | |||
23 | System Partition (ESP) and renamed with the extension ".efi". Without | 26 | System Partition (ESP) and renamed with the extension ".efi". Without |
24 | the extension the EFI firmware loader will refuse to execute it. It's | 27 | the extension the EFI firmware loader will refuse to execute it. It's |
25 | not possible to execute bzImage.efi from the usual Linux file systems | 28 | not possible to execute bzImage.efi from the usual Linux file systems |
26 | because EFI firmware doesn't have support for them. | 29 | because EFI firmware doesn't have support for them. For ARM the |
30 | arch/arm/boot/zImage should be copied to the system partition, and it | ||
31 | may not need to be renamed. | ||
27 | 32 | ||
28 | 33 | ||
29 | **** Passing kernel parameters from the EFI shell | 34 | **** Passing kernel parameters from the EFI shell |
@@ -63,3 +68,11 @@ Notice how bzImage.efi can be specified with a relative path. That's | |||
63 | because the image we're executing is interpreted by the EFI shell, | 68 | because the image we're executing is interpreted by the EFI shell, |
64 | which understands relative paths, whereas the rest of the command line | 69 | which understands relative paths, whereas the rest of the command line |
65 | is passed to bzImage.efi. | 70 | is passed to bzImage.efi. |
71 | |||
72 | |||
73 | **** The "dtb=" option | ||
74 | |||
75 | For the ARM architecture, we also need to be able to provide a device | ||
76 | tree to the kernel. This is done with the "dtb=" command line option, | ||
77 | and is processed in the same manner as the "initrd=" option that is | ||
78 | described above. | ||