Revision 5414dec6 hw/sun4m.c

b/hw/sun4m.c
281 281

  
282 282
static void main_cpu_reset(void *opaque)
283 283
{
284
    CPUSPARCState *env = opaque;
284
    SPARCCPU *cpu = opaque;
285
    CPUSPARCState *env = &cpu->env;
285 286

  
286
    cpu_state_reset(env);
287
    cpu_reset(CPU(cpu));
287 288
    env->halted = 0;
288 289
}
289 290

  
290 291
static void secondary_cpu_reset(void *opaque)
291 292
{
292
    CPUSPARCState *env = opaque;
293
    SPARCCPU *cpu = opaque;
294
    CPUSPARCState *env = &cpu->env;
293 295

  
294
    cpu_state_reset(env);
296
    cpu_reset(CPU(cpu));
295 297
    env->halted = 1;
296 298
}
297 299

  
......
821 823

  
822 824
    cpu_sparc_set_id(env, id);
823 825
    if (id == 0) {
824
        qemu_register_reset(main_cpu_reset, env);
826
        qemu_register_reset(main_cpu_reset, cpu);
825 827
    } else {
826
        qemu_register_reset(secondary_cpu_reset, env);
828
        qemu_register_reset(secondary_cpu_reset, cpu);
827 829
        env->halted = 1;
828 830
    }
829 831
    *cpu_irqs = qemu_allocate_irqs(cpu_set_irq, env, MAX_PILS);

Also available in: Unified diff