]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: efi: Move efi-entry.S into the libstub source directory
authorArd Biesheuvel <ardb@kernel.org>
Mon, 17 Oct 2022 15:14:41 +0000 (17:14 +0200)
committerArd Biesheuvel <ardb@kernel.org>
Wed, 9 Nov 2022 11:42:01 +0000 (12:42 +0100)
We will be sharing efi-entry.S with the zboot decompressor build, which
does not link against vmlinux directly. So move it into the libstub
source directory so we can include in the libstub static library.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/kernel/Makefile
drivers/firmware/efi/libstub/Makefile
drivers/firmware/efi/libstub/arm64-entry.S [moved from arch/arm64/kernel/efi-entry.S with 97% similarity]

index 2f361a883d8c93a138fabc5150e067d781fa870d..2a3b0e4950f2c37df377b1ecb23351edde5f4fec 100644 (file)
@@ -36,12 +36,6 @@ obj-y                        := debug-monitors.o entry.o irq.o fpsimd.o              \
                           syscall.o proton-pack.o idreg-override.o idle.o      \
                           patching.o
 
-targets                        += efi-entry.o
-
-OBJCOPYFLAGS := --prefix-symbols=__efistub_
-$(obj)/%.stub.o: $(obj)/%.o FORCE
-       $(call if_changed,objcopy)
-
 obj-$(CONFIG_COMPAT)                   += sys32.o signal32.o                   \
                                           sys_compat.o
 obj-$(CONFIG_COMPAT)                   += sigreturn32.o
@@ -57,8 +51,7 @@ obj-$(CONFIG_CPU_PM)                  += sleep.o suspend.o
 obj-$(CONFIG_CPU_IDLE)                 += cpuidle.o
 obj-$(CONFIG_JUMP_LABEL)               += jump_label.o
 obj-$(CONFIG_KGDB)                     += kgdb.o
-obj-$(CONFIG_EFI)                      += efi.o efi-entry.stub.o               \
-                                          efi-rt-wrapper.o
+obj-$(CONFIG_EFI)                      += efi.o efi-rt-wrapper.o
 obj-$(CONFIG_PCI)                      += pci.o
 obj-$(CONFIG_ARMV8_DEPRECATED)         += armv8_deprecated.o
 obj-$(CONFIG_ACPI)                     += acpi.o
index 26b0a421a28689f6ce8c280b2f5889b42b1fc28f..01a0be468a66c26df22c9c25ffec620f74fbb024 100644 (file)
@@ -83,7 +83,7 @@ $(obj)/lib-%.o: $(srctree)/lib/%.c FORCE
 lib-$(CONFIG_EFI_GENERIC_STUB) += efi-stub.o string.o intrinsics.o systable.o
 
 lib-$(CONFIG_ARM)              += arm32-stub.o
-lib-$(CONFIG_ARM64)            += arm64-stub.o
+lib-$(CONFIG_ARM64)            += arm64-stub.o arm64-entry.o
 lib-$(CONFIG_X86)              += x86-stub.o
 lib-$(CONFIG_RISCV)            += riscv-stub.o
 lib-$(CONFIG_LOONGARCH)                += loongarch-stub.o
@@ -137,7 +137,7 @@ STUBCOPY_RELOC-$(CONFIG_ARM)        := R_ARM_ABS
 #
 STUBCOPY_FLAGS-$(CONFIG_ARM64) += --prefix-alloc-sections=.init \
                                   --prefix-symbols=__efistub_
-STUBCOPY_RELOC-$(CONFIG_ARM64) := R_AARCH64_ABS
+STUBCOPY_RELOC-$(CONFIG_ARM64) := R_AARCH64_ABS64
 
 # For RISC-V, we don't need anything special other than arm64. Keep all the
 # symbols in .init section and make sure that no absolute symbols references
similarity index 97%
rename from arch/arm64/kernel/efi-entry.S
rename to drivers/firmware/efi/libstub/arm64-entry.S
index 8bce13356e2935fd5bdbaa59f28889e6f97af2a3..87082b222a8799c4e79a76e8b42039d60163cb1c 100644 (file)
@@ -6,12 +6,8 @@
  * Author: Mark Salter <msalter@redhat.com>
  */
 #include <linux/linkage.h>
-#include <linux/init.h>
-
 #include <asm/assembler.h>
 
-       __INIT
-
 SYM_CODE_START(efi_enter_kernel)
        /*
         * efi_pe_entry() will have copied the kernel image if necessary and we