aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hw/pc.h2
-rw-r--r--hw/pc_piix.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/hw/pc.h b/hw/pc.h
index 558d9a5f96..72f8c7c978 100644
--- a/hw/pc.h
+++ b/hw/pc.h
@@ -76,7 +76,7 @@ void irq_info(Monitor *mon);
#define GSI_NUM_PINS IOAPIC_NUM_PINS
typedef struct GSIState {
- qemu_irq *i8259_irq;
+ qemu_irq i8259_irq[ISA_NUM_IRQS];
qemu_irq ioapic_irq[IOAPIC_NUM_PINS];
} GSIState;
diff --git a/hw/pc_piix.c b/hw/pc_piix.c
index e6e280c55b..c89042f1ce 100644
--- a/hw/pc_piix.c
+++ b/hw/pc_piix.c
@@ -158,7 +158,9 @@ static void pc_init1(MemoryRegion *system_memory,
i8259 = xen_interrupt_controller_init();
}
- gsi_state->i8259_irq = i8259;
+ for (i = 0; i < ISA_NUM_IRQS; i++) {
+ gsi_state->i8259_irq[i] = i8259[i];
+ }
if (pci_enabled) {
ioapic_init(gsi_state);
}