mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-28 21:03:54 -06:00
exec: Pass CPUState to cpu_reset_interrupt()
Move it to qom/cpu.c to avoid build failures depending on include order of cpu-qom.h and exec/cpu-all.h. Change opaques of various ..._irq_handler() functions to the appropriate CPU type to facilitate using cpu_reset_interrupt(). Fix Coding Style issues while at it (missing braces, indentation). Signed-off-by: Andreas Färber <afaerber@suse.de>
This commit is contained in:
parent
259186a7d2
commit
d8ed887bdc
24 changed files with 105 additions and 66 deletions
|
@ -41,12 +41,14 @@ typedef struct {
|
|||
|
||||
static void cpu_irq_handler(void *opaque, int irq, int level)
|
||||
{
|
||||
CPULM32State *env = opaque;
|
||||
LM32CPU *cpu = opaque;
|
||||
CPULM32State *env = &cpu->env;
|
||||
CPUState *cs = CPU(cpu);
|
||||
|
||||
if (level) {
|
||||
cpu_interrupt(env, CPU_INTERRUPT_HARD);
|
||||
} else {
|
||||
cpu_reset_interrupt(env, CPU_INTERRUPT_HARD);
|
||||
cpu_reset_interrupt(cs, CPU_INTERRUPT_HARD);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -117,7 +119,7 @@ static void lm32_evr_init(QEMUMachineInitArgs *args)
|
|||
0x01, 0x7e, 0x43, 0x00, 0x555, 0x2aa, 1);
|
||||
|
||||
/* create irq lines */
|
||||
cpu_irq = qemu_allocate_irqs(cpu_irq_handler, env, 1);
|
||||
cpu_irq = qemu_allocate_irqs(cpu_irq_handler, cpu, 1);
|
||||
env->pic_state = lm32_pic_init(*cpu_irq);
|
||||
for (i = 0; i < 32; i++) {
|
||||
irq[i] = qdev_get_gpio_in(env->pic_state, i);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue