return s->control;
case 12: /* Interrupt status. */
return s->status;
+ default:
+ return 0;
}
}
return mpcore_timer_read(&s->timer[id], offset & 0xf);
}
bad_reg:
- cpu_abort(cpu_single_env, "mpcore_priv_read: Bad offset %x\n",
- (int)offset);
+ hw_error("mpcore_priv_read: Bad offset %x\n", (int)offset);
return 0;
}
}
return;
bad_reg:
- cpu_abort(cpu_single_env, "mpcore_priv_read: Bad offset %x\n",
- (int)offset);
+ hw_error("mpcore_priv_read: Bad offset %x\n", (int)offset);
}
static CPUReadMemoryFunc *mpcore_priv_readfn[] = {
int i;
s = (mpcore_priv_state *)qemu_mallocz(sizeof(mpcore_priv_state));
- if (!s)
- return NULL;
- s->gic = gic_init(base, pic_irq);
+ s->gic = gic_init(base + 0x1000, pic_irq);
if (!s->gic)
return NULL;
iomemtype = cpu_register_io_memory(0, mpcore_priv_readfn,