x86_64 requires that EFI calls use the ms_abi calling convention. For arm64 this is unnecessary. Signed-off-by: Nikos Nikoleris <nikos.nikoleris@xxxxxxx> Reviewed-by: Andrew Jones <drjones@xxxxxxxxxx> --- lib/linux/efi.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/linux/efi.h b/lib/linux/efi.h index 9a1cf87b..53748dd4 100644 --- a/lib/linux/efi.h +++ b/lib/linux/efi.h @@ -33,7 +33,11 @@ typedef u16 efi_char16_t; /* UNICODE character */ typedef u64 efi_physical_addr_t; typedef void *efi_handle_t; +#ifdef __x86_64__ #define __efiapi __attribute__((ms_abi)) +#else +#define __efiapi +#endif /* * The UEFI spec and EDK2 reference implementation both define EFI_GUID as -- 2.25.1