On 03/06/2018 05:43 PM, Michael Clark wrote:
> When load_elf is called with NULL as an argument to the
> address translate callback, it does an identity translation.
> This commit removes the redundant identity_translate callback.
> 
> Signed-off-by: Michael Clark <m...@sifive.com>
> Signed-off-by: Palmer Dabbelt <pal...@sifive.com>

Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org>

> ---
>  hw/riscv/sifive_e.c | 7 +------
>  hw/riscv/sifive_u.c | 7 +------
>  hw/riscv/spike.c    | 7 +------
>  hw/riscv/virt.c     | 7 +------
>  4 files changed, 4 insertions(+), 24 deletions(-)
> 
> diff --git a/hw/riscv/sifive_e.c b/hw/riscv/sifive_e.c
> index 19eca36..09c9d49 100644
> --- a/hw/riscv/sifive_e.c
> +++ b/hw/riscv/sifive_e.c
> @@ -82,16 +82,11 @@ static void copy_le32_to_phys(hwaddr pa, uint32_t *rom, 
> size_t len)
>      }
>  }
>  
> -static uint64_t identity_translate(void *opaque, uint64_t addr)
> -{
> -    return addr;
> -}
> -
>  static uint64_t load_kernel(const char *kernel_filename)
>  {
>      uint64_t kernel_entry, kernel_high;
>  
> -    if (load_elf(kernel_filename, identity_translate, NULL,
> +    if (load_elf(kernel_filename, NULL, NULL,
>                   &kernel_entry, NULL, &kernel_high,
>                   0, ELF_MACHINE, 1, 0) < 0) {
>          error_report("qemu: could not load kernel '%s'", kernel_filename);
> diff --git a/hw/riscv/sifive_u.c b/hw/riscv/sifive_u.c
> index f3f7615..6116c38 100644
> --- a/hw/riscv/sifive_u.c
> +++ b/hw/riscv/sifive_u.c
> @@ -68,16 +68,11 @@ static void copy_le32_to_phys(hwaddr pa, uint32_t *rom, 
> size_t len)
>      }
>  }
>  
> -static uint64_t identity_translate(void *opaque, uint64_t addr)
> -{
> -    return addr;
> -}
> -
>  static uint64_t load_kernel(const char *kernel_filename)
>  {
>      uint64_t kernel_entry, kernel_high;
>  
> -    if (load_elf(kernel_filename, identity_translate, NULL,
> +    if (load_elf(kernel_filename, NULL, NULL,
>                   &kernel_entry, NULL, &kernel_high,
>                   0, ELF_MACHINE, 1, 0) < 0) {
>          error_report("qemu: could not load kernel '%s'", kernel_filename);
> diff --git a/hw/riscv/spike.c b/hw/riscv/spike.c
> index 4c233ec..7710333 100644
> --- a/hw/riscv/spike.c
> +++ b/hw/riscv/spike.c
> @@ -59,16 +59,11 @@ static void copy_le32_to_phys(hwaddr pa, uint32_t *rom, 
> size_t len)
>      }
>  }
>  
> -static uint64_t identity_translate(void *opaque, uint64_t addr)
> -{
> -    return addr;
> -}
> -
>  static uint64_t load_kernel(const char *kernel_filename)
>  {
>      uint64_t kernel_entry, kernel_high;
>  
> -    if (load_elf_ram_sym(kernel_filename, identity_translate, NULL,
> +    if (load_elf_ram_sym(kernel_filename, NULL, NULL,
>              &kernel_entry, NULL, &kernel_high, 0, ELF_MACHINE, 1, 0,
>              NULL, true, htif_symbol_callback) < 0) {
>          error_report("qemu: could not load kernel '%s'", kernel_filename);
> diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c
> index 0d101fc..f8c19b4 100644
> --- a/hw/riscv/virt.c
> +++ b/hw/riscv/virt.c
> @@ -62,16 +62,11 @@ static void copy_le32_to_phys(hwaddr pa, uint32_t *rom, 
> size_t len)
>      }
>  }
>  
> -static uint64_t identity_translate(void *opaque, uint64_t addr)
> -{
> -    return addr;
> -}
> -
>  static uint64_t load_kernel(const char *kernel_filename)
>  {
>      uint64_t kernel_entry, kernel_high;
>  
> -    if (load_elf(kernel_filename, identity_translate, NULL,
> +    if (load_elf(kernel_filename, NULL, NULL,
>                   &kernel_entry, NULL, &kernel_high,
>                   0, ELF_MACHINE, 1, 0) < 0) {
>          error_report("qemu: could not load kernel '%s'", kernel_filename);
> 

Reply via email to