[U-Boot] [PATCH v4 0/3] Remove unused _relocate arguments

EFI image handle and system table are not used in _relocate().
v4: Consistently use EFIABI for _relocate() everywhere.
v3: Use EFIABI for _relocate() on x86; Rebased on u-boot/master.
v2: Separated the changes in efi_main() arguments and calling convention.
Ivan Gorinov (3): x86: Remove unused _relocate arguments arm: Remove unused _relocate arguments riscv: Remove unused _relocate arguments
arch/arm/lib/crt0_aarch64_efi.S | 2 -- arch/arm/lib/crt0_arm_efi.S | 2 -- arch/arm/lib/reloc_aarch64_efi.c | 3 +-- arch/arm/lib/reloc_arm_efi.c | 3 +-- arch/riscv/lib/reloc_riscv_efi.c | 3 +-- arch/x86/lib/crt0_x86_64_efi.S | 3 --- arch/x86/lib/reloc_ia32_efi.c | 3 +-- arch/x86/lib/reloc_x86_64_efi.c | 3 +-- 8 files changed, 5 insertions(+), 17 deletions(-)

EFI image handle and system table are not used in _relocate().
Signed-off-by: Ivan Gorinov ivan.gorinov@intel.com --- arch/x86/lib/crt0_x86_64_efi.S | 3 --- arch/x86/lib/reloc_ia32_efi.c | 3 +-- arch/x86/lib/reloc_x86_64_efi.c | 3 +-- 3 files changed, 2 insertions(+), 7 deletions(-)
diff --git a/arch/x86/lib/crt0_x86_64_efi.S b/arch/x86/lib/crt0_x86_64_efi.S index bb8d3cf..47ed5af 100644 --- a/arch/x86/lib/crt0_x86_64_efi.S +++ b/arch/x86/lib/crt0_x86_64_efi.S @@ -18,9 +18,6 @@ _start: pushq %rcx pushq %rdx
- mov %rcx, %r8 - mov %rdx, %r9 - lea image_base(%rip), %rcx lea _DYNAMIC(%rip), %rdx
diff --git a/arch/x86/lib/reloc_ia32_efi.c b/arch/x86/lib/reloc_ia32_efi.c index e838af3..a262533 100644 --- a/arch/x86/lib/reloc_ia32_efi.c +++ b/arch/x86/lib/reloc_ia32_efi.c @@ -12,8 +12,7 @@ #include <elf.h> #include <asm/elf.h>
-efi_status_t _relocate(long ldbase, Elf32_Dyn *dyn, efi_handle_t image, - struct efi_system_table *systab) +efi_status_t EFIAPI _relocate(long ldbase, Elf32_Dyn *dyn) { long relsz = 0, relent = 0; Elf32_Rel *rel = 0; diff --git a/arch/x86/lib/reloc_x86_64_efi.c b/arch/x86/lib/reloc_x86_64_efi.c index 34c5b2e..59d6f8d 100644 --- a/arch/x86/lib/reloc_x86_64_efi.c +++ b/arch/x86/lib/reloc_x86_64_efi.c @@ -14,8 +14,7 @@ #include <elf.h> #include <asm/elf.h>
-efi_status_t _relocate(long ldbase, Elf64_Dyn *dyn, efi_handle_t image, - struct efi_system_table *systab) +efi_status_t EFIAPI _relocate(long ldbase, Elf64_Dyn *dyn) { long relsz = 0, relent = 0; Elf64_Rel *rel = 0;

On Thu, Jun 28, 2018 at 02:49:46PM -0700, Ivan Gorinov wrote:
EFI image handle and system table are not used in _relocate().
Signed-off-by: Ivan Gorinov ivan.gorinov@intel.com
Applied to u-boot/master, thanks!

EFI image handle and system table are not used in _relocate().
Signed-off-by: Ivan Gorinov ivan.gorinov@intel.com --- arch/arm/lib/crt0_aarch64_efi.S | 2 -- arch/arm/lib/crt0_arm_efi.S | 2 -- arch/arm/lib/reloc_aarch64_efi.c | 3 +-- arch/arm/lib/reloc_arm_efi.c | 3 +-- 4 files changed, 2 insertions(+), 8 deletions(-)
diff --git a/arch/arm/lib/crt0_aarch64_efi.S b/arch/arm/lib/crt0_aarch64_efi.S index 5b6c384..0db4360 100644 --- a/arch/arm/lib/crt0_aarch64_efi.S +++ b/arch/arm/lib/crt0_aarch64_efi.S @@ -122,8 +122,6 @@ _start: mov x29, sp
stp x0, x1, [sp, #16] - mov x2, x0 - mov x3, x1 adr x0, ImageBase adrp x1, _DYNAMIC add x1, x1, #:lo12:_DYNAMIC diff --git a/arch/arm/lib/crt0_arm_efi.S b/arch/arm/lib/crt0_arm_efi.S index 0f296f3..23db49f 100644 --- a/arch/arm/lib/crt0_arm_efi.S +++ b/arch/arm/lib/crt0_arm_efi.S @@ -119,8 +119,6 @@ section_table: _start: stmfd sp!, {r0-r2, lr}
- mov r2, r0 - mov r3, r1 adr r1, .L_DYNAMIC ldr r0, [r1] add r1, r0, r1 diff --git a/arch/arm/lib/reloc_aarch64_efi.c b/arch/arm/lib/reloc_aarch64_efi.c index 38c13d3..1aa57db 100644 --- a/arch/arm/lib/reloc_aarch64_efi.c +++ b/arch/arm/lib/reloc_aarch64_efi.c @@ -38,8 +38,7 @@
#include <elf.h>
-efi_status_t _relocate(long ldbase, Elf64_Dyn *dyn, efi_handle_t image, - struct efi_system_table *systab) +efi_status_t EFIAPI _relocate(long ldbase, Elf64_Dyn *dyn) { long relsz = 0, relent = 0; Elf64_Rela *rel = 0; diff --git a/arch/arm/lib/reloc_arm_efi.c b/arch/arm/lib/reloc_arm_efi.c index 6232e3f..9103c03 100644 --- a/arch/arm/lib/reloc_arm_efi.c +++ b/arch/arm/lib/reloc_arm_efi.c @@ -14,8 +14,7 @@ #include <efi.h> #include <elf.h>
-efi_status_t _relocate(long ldbase, Elf32_Dyn *dyn, efi_handle_t image, - struct efi_system_table *systab) +efi_status_t EFIAPI _relocate(long ldbase, Elf32_Dyn *dyn) { long relsz = 0, relent = 0; Elf32_Rel *rel = 0;

On Thu, Jun 28, 2018 at 02:50:04PM -0700, Ivan Gorinov wrote:
EFI image handle and system table are not used in _relocate().
Signed-off-by: Ivan Gorinov ivan.gorinov@intel.com
Applied to u-boot/master, thanks!

EFI image handle and system table are not used in _relocate().
Signed-off-by: Ivan Gorinov ivan.gorinov@intel.com --- arch/riscv/lib/reloc_riscv_efi.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/riscv/lib/reloc_riscv_efi.c b/arch/riscv/lib/reloc_riscv_efi.c index 8b4b2b1..c1039dd 100644 --- a/arch/riscv/lib/reloc_riscv_efi.c +++ b/arch/riscv/lib/reloc_riscv_efi.c @@ -50,8 +50,7 @@ #define ELF_R_TYPE ELF32_R_TYPE #endif
-efi_status_t _relocate(long ldbase, Elf_Dyn *dyn, efi_handle_t image, - struct efi_system_table *systab) +efi_status_t EFIAPI _relocate(long ldbase, Elf_Dyn *dyn) { long relsz = 0, relent = 0; Elf_Rela *rel = 0;

On Thu, Jun 28, 2018 at 02:50:17PM -0700, Ivan Gorinov wrote:
EFI image handle and system table are not used in _relocate().
Signed-off-by: Ivan Gorinov ivan.gorinov@intel.com
Applied to u-boot/master, thanks!
participants (2)
-
Ivan Gorinov
-
Tom Rini