qemu/hw/intc
Christoffer Dall 40d225009e arm_gic: Keep track of SGI sources
Right now the arm gic emulation doesn't keep track of the source of an
SGI (which apparently Linux guests don't use, or they're fine with
assuming CPU 0 always).

Add the necessary matrix on the GICState structure and maintain the data
when setting and clearing the pending state of an IRQ and make the state
visible to the guest.

Note that we always choose to present the source as the lowest-numbered
CPU in case multiple cores have signalled the same SGI number to a core
on the system.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2014-02-08 14:47:28 +00:00
..
allwinner-a10-pic.c hw/intc: add allwinner A10 interrupt controller 2013-12-17 20:12:51 +00:00
apic_common.c icc_bus: QOM'ify ICC 2013-12-24 18:02:18 +01:00
apic.c apic: QOM'ify APIC 2013-12-24 18:02:18 +01:00
arm_gic_common.c arm_gic: Keep track of SGI sources 2014-02-08 14:47:28 +00:00
arm_gic_kvm.c sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
arm_gic.c arm_gic: Keep track of SGI sources 2014-02-08 14:47:28 +00:00
armv7m_nvic.c aio / timers: Switch entire codebase to the new timer API 2013-08-22 19:14:24 +02:00
etraxfs_pic.c hw: cannot_instantiate_with_device_add_yet due to pointer props 2013-12-24 17:27:17 +01:00
exynos4210_combiner.c exynos4210_combiner: QOM cast cleanup 2013-07-29 21:06:57 +02:00
exynos4210_gic.c exynos4210_gic: QOM cast cleanup for exynos4210.irq_gate 2013-07-29 21:06:57 +02:00
gic_internal.h arm_gic: Fix GIC pending behavior 2014-02-08 14:47:28 +00:00
grlib_irqmp.c hw: cannot_instantiate_with_device_add_yet due to pointer props 2013-12-24 17:27:17 +01:00
heathrow_pic.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
i8259_common.c isa: Clean up use of cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00
i8259.c aio / timers: Switch entire codebase to the new timer API 2013-08-22 19:14:24 +02:00
imx_avic.c imx_avic: QOM cast cleanup 2013-07-29 21:06:05 +02:00
ioapic_common.c ioapic: QOM'ify ioapic 2013-12-24 18:02:18 +01:00
ioapic.c ioapic: QOM'ify ioapic 2013-12-24 18:02:18 +01:00
lm32_pic.c lm32_pic: QOM cast cleanup 2013-07-29 21:06:57 +02:00
Makefile.objs hw/intc: add allwinner A10 interrupt controller 2013-12-17 20:12:51 +00:00
omap_intc.c hw: cannot_instantiate_with_device_add_yet due to pointer props 2013-12-24 17:27:17 +01:00
openpic_kvm.c hw/i*: pass owner to memory_region_init* functions 2013-07-04 17:42:48 +02:00
openpic.c intc/openpic: Build openpic only once 2013-07-09 21:33:02 +02:00
pl190.c sysbus: Set cannot_instantiate_with_device_add_yet 2013-12-23 00:27:22 +01:00
puv3_intc.c puv3_intc: QOM cast cleanup 2013-07-29 21:06:58 +02:00
realview_gic.c realview_gic: Prepare for QOM embedding 2013-11-05 17:47:30 +01:00
sh_intc.c cpu: Make first_cpu and next_cpu CPUState 2013-07-09 21:32:54 +02:00
slavio_intctl.c slavio_intctl: QOM cast cleanup 2013-07-29 21:06:58 +02:00
xics_kvm.c xics-kvm: enable irqfd for MSI 2013-10-25 23:25:47 +02:00
xics.c spapr-rtas: replace return code constants with macros 2013-12-20 01:57:59 +01:00
xilinx_intc.c xilinx_intc: QOM cast cleanup 2013-07-29 21:06:58 +02:00