git: 66b9db032ba9 - main - stand: move efi's bi_load into loader_efi.h
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 05 Dec 2024 00:18:51 UTC
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=66b9db032ba9bc0fe6f79083c7eb2891a2aac60f commit 66b9db032ba9bc0fe6f79083c7eb2891a2aac60f Author: Ahmad Khalifa <ahmadkhalifa570@gmail.com> AuthorDate: 2024-09-27 15:38:01 +0000 Commit: Warner Losh <imp@FreeBSD.org> CommitDate: 2024-12-05 00:19:17 +0000 stand: move efi's bi_load into loader_efi.h For kboot, we still have to declare it manually since we don't always include loader_efi.h Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1446 --- stand/efi/loader/arch/amd64/elf64_freebsd.c | 3 --- stand/efi/loader/arch/amd64/multiboot2.c | 2 -- stand/efi/loader/arch/arm/exec.c | 2 -- stand/efi/loader/arch/arm64/exec.c | 3 --- stand/efi/loader/arch/i386/elf64_freebsd.c | 3 --- stand/efi/loader/arch/riscv/exec.c | 2 -- stand/efi/loader/bootinfo.c | 3 --- stand/efi/loader/loader_efi.h | 3 +++ stand/kboot/kboot/arch/aarch64/exec.c | 3 +++ stand/kboot/kboot/arch/amd64/elf64_freebsd.c | 7 ++++--- 10 files changed, 10 insertions(+), 21 deletions(-) diff --git a/stand/efi/loader/arch/amd64/elf64_freebsd.c b/stand/efi/loader/arch/amd64/elf64_freebsd.c index 91dd979a677e..7413d18aab2a 100644 --- a/stand/efi/loader/arch/amd64/elf64_freebsd.c +++ b/stand/efi/loader/arch/amd64/elf64_freebsd.c @@ -42,9 +42,6 @@ #include "loader_efi.h" -extern int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, - bool exit_bs); - static int elf64_exec(struct preloaded_file *amp); static int elf64_obj_exec(struct preloaded_file *amp); diff --git a/stand/efi/loader/arch/amd64/multiboot2.c b/stand/efi/loader/arch/amd64/multiboot2.c index 130caa82aa49..d09b01fce1fc 100644 --- a/stand/efi/loader/arch/amd64/multiboot2.c +++ b/stand/efi/loader/arch/amd64/multiboot2.c @@ -57,8 +57,6 @@ extern int elf32_loadfile_raw(char *filename, uint64_t dest, extern int elf64_load_modmetadata(struct preloaded_file *fp, uint64_t dest); extern int elf64_obj_loadfile(char *filename, uint64_t dest, struct preloaded_file **result); -extern int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, - bool exit_bs); extern void multiboot2_exec(void *entry, uint64_t multiboot_info, uint64_t stack); diff --git a/stand/efi/loader/arch/arm/exec.c b/stand/efi/loader/arch/arm/exec.c index 85a8c26ade30..c2a79523c02a 100644 --- a/stand/efi/loader/arch/arm/exec.c +++ b/stand/efi/loader/arch/arm/exec.c @@ -40,8 +40,6 @@ #include "bootstrap.h" #include "loader_efi.h" -extern int bi_load(char *, vm_offset_t *, vm_offset_t *, bool); - static int __elfN(arm_load)(char *filename, uint64_t dest, struct preloaded_file **result) diff --git a/stand/efi/loader/arch/arm64/exec.c b/stand/efi/loader/arch/arm64/exec.c index 877cff658d1e..91a0503a976f 100644 --- a/stand/efi/loader/arch/arm64/exec.c +++ b/stand/efi/loader/arch/arm64/exec.c @@ -42,9 +42,6 @@ static int elf64_exec(struct preloaded_file *amp); static int elf64_obj_exec(struct preloaded_file *amp); -int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, - bool exit_bs); - static struct file_format arm64_elf = { elf64_loadfile, elf64_exec diff --git a/stand/efi/loader/arch/i386/elf64_freebsd.c b/stand/efi/loader/arch/i386/elf64_freebsd.c index ba5117b37016..b8bc925576e7 100644 --- a/stand/efi/loader/arch/i386/elf64_freebsd.c +++ b/stand/efi/loader/arch/i386/elf64_freebsd.c @@ -37,9 +37,6 @@ #include "loader_efi.h" -extern int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, - bool exit_bs); - static int elf64_exec(struct preloaded_file *amp); static int elf64_obj_exec(struct preloaded_file *amp); diff --git a/stand/efi/loader/arch/riscv/exec.c b/stand/efi/loader/arch/riscv/exec.c index 3c40517ea968..0fc28cba78c1 100644 --- a/stand/efi/loader/arch/riscv/exec.c +++ b/stand/efi/loader/arch/riscv/exec.c @@ -40,8 +40,6 @@ #include "bootstrap.h" #include "loader_efi.h" -extern int bi_load(char *, vm_offset_t *, vm_offset_t *, bool); - static int __elfN(exec)(struct preloaded_file *fp) { diff --git a/stand/efi/loader/bootinfo.c b/stand/efi/loader/bootinfo.c index 2961b8b97fb7..99a7b1444aca 100644 --- a/stand/efi/loader/bootinfo.c +++ b/stand/efi/loader/bootinfo.c @@ -64,9 +64,6 @@ #include "geliboot.h" #endif -int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, - bool exit_bs); - static int bi_getboothowto(char *kargs) { diff --git a/stand/efi/loader/loader_efi.h b/stand/efi/loader/loader_efi.h index c9dfefcd4c74..8d4e352eec79 100644 --- a/stand/efi/loader/loader_efi.h +++ b/stand/efi/loader/loader_efi.h @@ -55,4 +55,7 @@ void * efi_translate(vm_offset_t ptr); void efi_copy_finish(void); void efi_copy_finish_nop(void); +int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, + bool exit_bs); + #endif /* _LOADER_EFI_COPY_H_ */ diff --git a/stand/kboot/kboot/arch/aarch64/exec.c b/stand/kboot/kboot/arch/aarch64/exec.c index 0aa0e7b8408f..585ccffbd42c 100644 --- a/stand/kboot/kboot/arch/aarch64/exec.c +++ b/stand/kboot/kboot/arch/aarch64/exec.c @@ -70,8 +70,11 @@ extern uint32_t efi_map_size; extern vm_paddr_t efi_map_phys_src; /* From DTB */ extern vm_paddr_t efi_map_phys_dst; /* From our memory map metadata module */ +/* Usually provided by loader_efi.h */ +#ifndef EFI int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, bool exit_bs); +#endif static struct file_format arm64_elf = { elf64_loadfile, diff --git a/stand/kboot/kboot/arch/amd64/elf64_freebsd.c b/stand/kboot/kboot/arch/amd64/elf64_freebsd.c index f6574b4cbd0d..8618f132126b 100644 --- a/stand/kboot/kboot/arch/amd64/elf64_freebsd.c +++ b/stand/kboot/kboot/arch/amd64/elf64_freebsd.c @@ -56,6 +56,10 @@ static EFI_GUID acpi_guid = ACPI_TABLE_GUID; static EFI_GUID acpi20_guid = ACPI_20_TABLE_GUID; +#else +/* Usually provided by loader_efi.h */ +extern int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, + bool exit_bs); #endif #ifdef EFI @@ -64,9 +68,6 @@ static EFI_GUID acpi20_guid = ACPI_20_TABLE_GUID; #define LOADER_PAGE_SIZE PAGE_SIZE #endif -extern int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, - bool exit_bs); - static int elf64_exec(struct preloaded_file *amp); static int elf64_obj_exec(struct preloaded_file *amp);