Propagate the target agnostic CPU pointer to the publicly declared bl_gen_jump_kernel() function.
Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org> --- include/hw/mips/bootloader.h | 2 +- hw/mips/bootloader.c | 14 +++++++------- hw/mips/boston.c | 2 +- hw/mips/fuloong2e.c | 2 +- hw/mips/malta.c | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/include/hw/mips/bootloader.h b/include/hw/mips/bootloader.h index daa2b92e249..6b58eafb8bc 100644 --- a/include/hw/mips/bootloader.h +++ b/include/hw/mips/bootloader.h @@ -13,7 +13,7 @@ #include "target/mips/cpu-qom.h" void bl_gen_jump_to(const MIPSCPU *cpu, void **ptr, target_ulong jump_addr); -void bl_gen_jump_kernel(void **ptr, +void bl_gen_jump_kernel(const MIPSCPU *cpu, void **ptr, bool set_sp, target_ulong sp, bool set_a0, target_ulong a0, bool set_a1, target_ulong a1, diff --git a/hw/mips/bootloader.c b/hw/mips/bootloader.c index 6f055228392..9804051ab2d 100644 --- a/hw/mips/bootloader.c +++ b/hw/mips/bootloader.c @@ -256,7 +256,7 @@ void bl_gen_jump_to(const MIPSCPU *cpu, void **p, target_ulong jump_addr) bl_gen_nop(&cpu->env, p); /* delay slot */ } -void bl_gen_jump_kernel(void **p, +void bl_gen_jump_kernel(const MIPSCPU *cpu, void **p, bool set_sp, target_ulong sp, bool set_a0, target_ulong a0, bool set_a1, target_ulong a1, @@ -265,22 +265,22 @@ void bl_gen_jump_kernel(void **p, target_ulong kernel_addr) { if (set_sp) { - bl_gen_load_ulong(&MIPS_CPU(first_cpu)->env, p, BL_REG_SP, sp); + bl_gen_load_ulong(&cpu->env, p, BL_REG_SP, sp); } if (set_a0) { - bl_gen_load_ulong(&MIPS_CPU(first_cpu)->env, p, BL_REG_A0, a0); + bl_gen_load_ulong(&cpu->env, p, BL_REG_A0, a0); } if (set_a1) { - bl_gen_load_ulong(&MIPS_CPU(first_cpu)->env, p, BL_REG_A1, a1); + bl_gen_load_ulong(&cpu->env, p, BL_REG_A1, a1); } if (set_a2) { - bl_gen_load_ulong(&MIPS_CPU(first_cpu)->env, p, BL_REG_A2, a2); + bl_gen_load_ulong(&cpu->env, p, BL_REG_A2, a2); } if (set_a3) { - bl_gen_load_ulong(&MIPS_CPU(first_cpu)->env, p, BL_REG_A3, a3); + bl_gen_load_ulong(&cpu->env, p, BL_REG_A3, a3); } - bl_gen_jump_to(MIPS_CPU(first_cpu), p, kernel_addr); + bl_gen_jump_to(cpu, p, kernel_addr); } void bl_gen_write_ulong(void **p, target_ulong addr, target_ulong val) diff --git a/hw/mips/boston.c b/hw/mips/boston.c index 63dc654192a..3a06b776fe8 100644 --- a/hw/mips/boston.c +++ b/hw/mips/boston.c @@ -352,7 +352,7 @@ static void gen_firmware(void *p, hwaddr kernel_entry, hwaddr fdt_addr) * a2/$6 = 0 * a3/$7 = 0 */ - bl_gen_jump_kernel(&p, + bl_gen_jump_kernel(MIPS_CPU(first_cpu), &p, true, 0, true, (int32_t)-2, true, fdt_addr, true, 0, true, 0, kernel_entry); diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c index 16b6a5129e7..b87622ee6e3 100644 --- a/hw/mips/fuloong2e.c +++ b/hw/mips/fuloong2e.c @@ -179,7 +179,7 @@ static void write_bootloader(CPUMIPSState *env, uint8_t *base, /* Second part of the bootloader */ p = (uint32_t *)(base + 0x040); - bl_gen_jump_kernel((void **)&p, + bl_gen_jump_kernel(MIPS_CPU(first_cpu), (void **)&p, true, ENVP_VADDR - 64, true, 2, true, ENVP_VADDR, true, ENVP_VADDR + 8, diff --git a/hw/mips/malta.c b/hw/mips/malta.c index 37be2330eda..fe9e06f48f4 100644 --- a/hw/mips/malta.c +++ b/hw/mips/malta.c @@ -678,7 +678,7 @@ static void bl_setup_gt64120_jump_kernel(void **p, uint64_t run_addr, cpu_mips_phys_to_kseg1(NULL, 0x1be00000 + 0xcfc), tswap32(ldl_be_p(pci_pins_cfg))); - bl_gen_jump_kernel(p, + bl_gen_jump_kernel(MIPS_CPU(first_cpu), p, true, ENVP_VADDR - 64, /* * If semihosting is used, arguments have already -- 2.47.1