efi_loader: use include in ARM EFI linker script
Use the same include as arm64 for the linker script.
Adjust the 32-bit ARM PE-COFF header accordingly and harmonize it with the
64-bit ARM header.
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
diff --git a/arch/arm/lib/crt0_arm_efi.S b/arch/arm/lib/crt0_arm_efi.S
index 3664cce..91b0fe1 100644
--- a/arch/arm/lib/crt0_arm_efi.S
+++ b/arch/arm/lib/crt0_arm_efi.S
@@ -46,8 +46,8 @@
.long 0 /* BaseOfData */
extra_header_fields:
- .long 0 /* image_base */
- .long 0x200 /* SectionAlignment */
+ .long 0 /* ImageBase */
+ .long 0x1000 /* SectionAlignment */
.long 0x200 /* FileAlignment */
.short 0 /* MajorOperatingSystemVersion */
.short 0 /* MinorOperatingSystemVersion */
@@ -84,6 +84,7 @@
.quad 0 /* CertificationTable */
.quad 0 /* BaseRelocationTable */
+ /* Section table */
section_table:
/*
@@ -111,9 +112,9 @@
.byte 0
.byte 0
.byte 0 /* end of 0 padding of section name */
- .long _text_size /* VirtualSize */
+ .long _etext - _start /* VirtualSize */
.long _start - image_base /* VirtualAddress */
- .long _text_size /* SizeOfRawData */
+ .long _etext - _start /* SizeOfRawData */
.long _start - image_base /* PointerToRawData */
.long 0 /* PointerToRelocations */
.long 0 /* PointerToLineNumbers */