Prepare v2023.10
[platform/kernel/u-boot.git] / include / efi_default_filename.h
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