arm: Leave smccc calls in .text when efi_loader=n
authorAlexander Graf <agraf@suse.de>
Mon, 11 Feb 2019 14:07:17 +0000 (15:07 +0100)
committerAlexander Graf <agraf@suse.de>
Wed, 13 Feb 2019 08:40:06 +0000 (09:40 +0100)
Commit 81ea00838c6 ("efi_loader: PSCI reset and shutdown") put the SMCCC
assembly code into the efi specific code section. This is wrong when we
do not have EFI_LOADER enabled, as that strips efi runtime sections from
the output binary

Reported-by: Michal Simek <monstr@monstr.eu>
Reported-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Tested-by: Michal Simek <monstr@monstr.eu>
Fixes: 81ea00838c6 ("efi_loader: PSCI reset and shutdown")
Signed-off-by: Alexander Graf <agraf@suse.de>
arch/arm/cpu/armv7/smccc-call.S
arch/arm/cpu/armv8/smccc-call.S

index eae69e3..f70728f 100644 (file)
@@ -7,7 +7,9 @@
 #include <asm/opcodes-sec.h>
 #include <asm/opcodes-virt.h>
 
+#ifdef CONFIG_EFI_LOADER
        .section        .text.efi_runtime
+#endif
 
 #define UNWIND(x...)
        /*
index 86de4b4..dc92b28 100644 (file)
@@ -6,7 +6,9 @@
 #include <linux/arm-smccc.h>
 #include <generated/asm-offsets.h>
 
+#ifdef CONFIG_EFI_LOADER
        .section        .text.efi_runtime
+#endif
 
        .macro SMCCC instr
        .cfi_startproc