提交 5d309320 编写于 作者: A Andreas Färber

arm_boot: Pass ARMCPU to arm_boot_info::secondary_cpu_reset_hook()

Adapt highbank accordingly.
Signed-off-by: NAndreas Färber <afaerber@suse.de>
Acked-by: NPeter Maydell <peter.maydell@linaro.org>
上级 9543b0cd
......@@ -52,7 +52,7 @@ struct arm_boot_info {
*/
void (*write_secondary_boot)(ARMCPU *cpu,
const struct arm_boot_info *info);
void (*secondary_cpu_reset_hook)(CPUARMState *env,
void (*secondary_cpu_reset_hook)(ARMCPU *cpu,
const struct arm_boot_info *info);
/* Used internally by arm_boot.c */
int is_linux;
......
......@@ -72,9 +72,11 @@ static void default_write_secondary(ARMCPU *cpu,
info->smp_loader_start);
}
static void default_reset_secondary(CPUARMState *env,
static void default_reset_secondary(ARMCPU *cpu,
const struct arm_boot_info *info)
{
CPUARMState *env = &cpu->env;
stl_phys_notdirty(info->smp_bootreg_addr, 0);
env->regs[15] = info->smp_loader_start;
}
......@@ -295,7 +297,7 @@ static void do_cpu_reset(void *opaque)
}
}
} else {
info->secondary_cpu_reset_hook(env, info);
info->secondary_cpu_reset_hook(cpu, info);
}
}
}
......
......@@ -60,8 +60,10 @@ static void hb_write_secondary(ARMCPU *cpu, const struct arm_boot_info *info)
rom_add_blob_fixed("smpboot", smpboot, sizeof(smpboot), SMP_BOOT_ADDR);
}
static void hb_reset_secondary(CPUARMState *env, const struct arm_boot_info *info)
static void hb_reset_secondary(ARMCPU *cpu, const struct arm_boot_info *info)
{
CPUARMState *env = &cpu->env;
switch (info->nb_cpus) {
case 4:
stl_phys_notdirty(SMP_BOOT_REG + 0x30, 0);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册