zynq: Add EFI runtime sections to linker script
authorAlexander Graf <agraf@suse.de>
Mon, 3 Jul 2017 11:41:34 +0000 (13:41 +0200)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 2 Aug 2017 07:11:51 +0000 (09:11 +0200)
When using EFI_LOADER, we add a few special sections for runtime code and
data which get relocated on demand when executing a target OS.

These runtime structures need to get annotated properly in the linker script.
While we do that properly in the generic one, we missed out on the zynq
specific linker script.

This patch adds the EFI runtime section annotations into the zynq linker script
so that the efi loader code actually works on that platform.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/arm/mach-zynq/u-boot.lds

index 4dc9bb0102c3611cf78fb3c62d8b6f67a858c4a2..86559cb6aacec3f6caba3ee2ec98a2abbb63eb6e 100644 (file)
@@ -42,6 +42,35 @@ SECTIONS
 
        . = ALIGN(4);
 
+       .__efi_runtime_start : {
+               *(.__efi_runtime_start)
+       }
+
+       .efi_runtime : {
+               *(efi_runtime_text)
+               *(efi_runtime_data)
+       }
+
+       .__efi_runtime_stop : {
+               *(.__efi_runtime_stop)
+       }
+
+       .efi_runtime_rel_start :
+       {
+               *(.__efi_runtime_rel_start)
+       }
+
+       .efi_runtime_rel : {
+               *(.relefi_runtime_text)
+               *(.relefi_runtime_data)
+       }
+
+       .efi_runtime_rel_stop :
+       {
+               *(.__efi_runtime_rel_stop)
+       }
+
+       . = ALIGN(4);
        .image_copy_end :
        {
                *(.__image_copy_end)