Revision 98cec4a2 hw/sun4u.c
b/hw/sun4u.c | ||
---|---|---|
243 | 243 |
return kernel_size; |
244 | 244 |
} |
245 | 245 |
|
246 |
void cpu_check_irqs(CPUState *env) |
|
246 |
void cpu_check_irqs(CPUSPARCState *env)
|
|
247 | 247 |
{ |
248 | 248 |
uint32_t pil = env->pil_in | |
249 | 249 |
(env->softint & ~(SOFTINT_TIMER | SOFTINT_STIMER)); |
... | ... | |
297 | 297 |
} |
298 | 298 |
} |
299 | 299 |
|
300 |
static void cpu_kick_irq(CPUState *env) |
|
300 |
static void cpu_kick_irq(CPUSPARCState *env)
|
|
301 | 301 |
{ |
302 | 302 |
env->halted = 0; |
303 | 303 |
cpu_check_irqs(env); |
... | ... | |
306 | 306 |
|
307 | 307 |
static void cpu_set_irq(void *opaque, int irq, int level) |
308 | 308 |
{ |
309 |
CPUState *env = opaque; |
|
309 |
CPUSPARCState *env = opaque;
|
|
310 | 310 |
|
311 | 311 |
if (level) { |
312 | 312 |
CPUIRQ_DPRINTF("Raise CPU IRQ %d\n", irq); |
... | ... | |
320 | 320 |
} |
321 | 321 |
|
322 | 322 |
typedef struct ResetData { |
323 |
CPUState *env; |
|
323 |
CPUSPARCState *env;
|
|
324 | 324 |
uint64_t prom_addr; |
325 | 325 |
} ResetData; |
326 | 326 |
|
... | ... | |
344 | 344 |
qemu_get_timer(f, s->qtimer); |
345 | 345 |
} |
346 | 346 |
|
347 |
static CPUTimer* cpu_timer_create(const char* name, CPUState *env, |
|
347 |
static CPUTimer* cpu_timer_create(const char* name, CPUSPARCState *env,
|
|
348 | 348 |
QEMUBHFunc *cb, uint32_t frequency, |
349 | 349 |
uint64_t disabled_mask) |
350 | 350 |
{ |
... | ... | |
373 | 373 |
static void main_cpu_reset(void *opaque) |
374 | 374 |
{ |
375 | 375 |
ResetData *s = (ResetData *)opaque; |
376 |
CPUState *env = s->env; |
|
376 |
CPUSPARCState *env = s->env;
|
|
377 | 377 |
static unsigned int nr_resets; |
378 | 378 |
|
379 | 379 |
cpu_state_reset(env); |
... | ... | |
396 | 396 |
|
397 | 397 |
static void tick_irq(void *opaque) |
398 | 398 |
{ |
399 |
CPUState *env = opaque; |
|
399 |
CPUSPARCState *env = opaque;
|
|
400 | 400 |
|
401 | 401 |
CPUTimer* timer = env->tick; |
402 | 402 |
|
... | ... | |
413 | 413 |
|
414 | 414 |
static void stick_irq(void *opaque) |
415 | 415 |
{ |
416 |
CPUState *env = opaque; |
|
416 |
CPUSPARCState *env = opaque;
|
|
417 | 417 |
|
418 | 418 |
CPUTimer* timer = env->stick; |
419 | 419 |
|
... | ... | |
430 | 430 |
|
431 | 431 |
static void hstick_irq(void *opaque) |
432 | 432 |
{ |
433 |
CPUState *env = opaque; |
|
433 |
CPUSPARCState *env = opaque;
|
|
434 | 434 |
|
435 | 435 |
CPUTimer* timer = env->hstick; |
436 | 436 |
|
... | ... | |
714 | 714 |
.class_init = ram_class_init, |
715 | 715 |
}; |
716 | 716 |
|
717 |
static CPUState *cpu_devinit(const char *cpu_model, const struct hwdef *hwdef) |
|
717 |
static CPUSPARCState *cpu_devinit(const char *cpu_model, const struct hwdef *hwdef)
|
|
718 | 718 |
{ |
719 |
CPUState *env; |
|
719 |
CPUSPARCState *env;
|
|
720 | 720 |
ResetData *reset_info; |
721 | 721 |
|
722 | 722 |
uint32_t tick_frequency = 100*1000000; |
... | ... | |
755 | 755 |
const char *initrd_filename, const char *cpu_model, |
756 | 756 |
const struct hwdef *hwdef) |
757 | 757 |
{ |
758 |
CPUState *env; |
|
758 |
CPUSPARCState *env;
|
|
759 | 759 |
M48t59State *nvram; |
760 | 760 |
unsigned int i; |
761 | 761 |
long initrd_size, kernel_size; |
Also available in: Unified diff