1/* SPDX-License-Identifier: GPL-2.0+ */ 2/* 3 * When a boot option does not provide a file path the EFI file to be 4 * booted is \EFI\BOOT\$(BOOTEFI_NAME).EFI. The architecture specific 5 * file name is defined in this include. 6 * 7 * Copyright (c) 2022, Heinrich Schuchardt <xypron.glpk@gmx.de> 8 * Copyright (c) 2022, Linaro Limited 9 */ 10 11#ifndef _EFI_DEFAULT_FILENAME_H 12#define _EFI_DEFAULT_FILENAME_H 13 14#include <host_arch.h> 15 16#undef BOOTEFI_NAME 17 18#ifdef CONFIG_SANDBOX 19 20#if HOST_ARCH == HOST_ARCH_X86_64 21#define BOOTEFI_NAME "BOOTX64.EFI" 22#elif HOST_ARCH == HOST_ARCH_X86 23#define BOOTEFI_NAME "BOOTIA32.EFI" 24#elif HOST_ARCH == HOST_ARCH_AARCH64 25#define BOOTEFI_NAME "BOOTAA64.EFI" 26#elif HOST_ARCH == HOST_ARCH_ARM 27#define BOOTEFI_NAME "BOOTARM.EFI" 28#elif HOST_ARCH == HOST_ARCH_RISCV32 29#define BOOTEFI_NAME "BOOTRISCV32.EFI" 30#elif HOST_ARCH == HOST_ARCH_RISCV64 31#define BOOTEFI_NAME "BOOTRISCV64.EFI" 32#else 33#error Unsupported UEFI architecture 34#endif 35 36#else 37 38#if defined(CONFIG_ARM64) 39#define BOOTEFI_NAME "BOOTAA64.EFI" 40#elif defined(CONFIG_ARM) 41#define BOOTEFI_NAME "BOOTARM.EFI" 42#elif defined(CONFIG_X86_64) 43#define BOOTEFI_NAME "BOOTX64.EFI" 44#elif defined(CONFIG_X86) 45#define BOOTEFI_NAME "BOOTIA32.EFI" 46#elif defined(CONFIG_ARCH_RV32I) 47#define BOOTEFI_NAME "BOOTRISCV32.EFI" 48#elif defined(CONFIG_ARCH_RV64I) 49#define BOOTEFI_NAME "BOOTRISCV64.EFI" 50#else 51#error Unsupported UEFI architecture 52#endif 53 54#endif 55 56#endif 57