qemu-e2k/hw/intc
Michael Davidsaver d713ea6c46 armv7m_nvic: keep a pointer to the CPU
Many NVIC operations access the CPU state, so store a pointer in
struct nvic_state rather than fetching it via qemu_get_cpu() every
time we need it.

As with the arm_gicv3_common code, we currently just call
qemu_get_cpu() in the NVIC's realize method, but in future we might
want to use a QOM property to pass the CPU to the NVIC.

This imposes an ordering requirement that the CPU is
realized before the NVIC, but that is always true since
both are dealt with in armv7m_init().

Signed-off-by: Michael Davidsaver <mdavidsaver@gmail.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1485285380-10565-3-git-send-email-peter.maydell@linaro.org
[PMM: Use qemu_get_cpu(0) rather than first_cpu; expand
 commit message]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-01-27 15:29:08 +00:00
..
allwinner-a10-pic.c
apic_common.c Plumb the HAXM-based hardware acceleration support 2017-01-19 22:07:46 +01:00
apic.c apic: add send_msi() to APICCommonClass 2016-10-17 15:44:49 -02:00
arm_gic_common.c hw/intc/arm_gic: Add external IRQ lines for VIRQ and VFIQ 2017-01-20 11:15:09 +00:00
arm_gic_kvm.c migration: disallow migrate_add_blocker during migration 2017-01-24 18:00:30 +00:00
arm_gic.c nvic: set pending status for not active interrupts 2016-11-07 10:00:24 +00:00
arm_gicv2m.c
arm_gicv3_common.c hw/intc/gicv3: Add data fields for virtualization support 2017-01-20 11:15:09 +00:00
arm_gicv3_cpuif.c hw/intc/arm_gicv3: Implement EL2 traps for CPU i/f regs 2017-01-20 11:15:10 +00:00
arm_gicv3_dist.c
arm_gicv3_its_common.c hw/intc/arm_gicv3_its: Implement ITS base class 2016-10-04 13:28:08 +01:00
arm_gicv3_its_kvm.c migration: disallow migrate_add_blocker during migration 2017-01-24 18:00:30 +00:00
arm_gicv3_kvm.c migration: disallow migrate_add_blocker during migration 2017-01-24 18:00:30 +00:00
arm_gicv3_redist.c
arm_gicv3.c hw/intc/arm_gicv3: Don't signal Pending+Active interrupts to CPU 2016-12-27 14:59:25 +00:00
armv7m_nvic.c armv7m_nvic: keep a pointer to the CPU 2017-01-27 15:29:08 +00:00
aspeed_vic.c
bcm2835_ic.c
bcm2836_control.c
etraxfs_pic.c
exynos4210_combiner.c
exynos4210_gic.c
gic_internal.h
gicv3_internal.h hw/intc/gicv3: Add defines for ICH system register fields 2017-01-20 11:15:09 +00:00
grlib_irqmp.c
heathrow_pic.c
i8259_common.c i8259: give ISA device when registering ISA ioports 2016-10-04 10:00:26 +02:00
i8259.c intc: make HMP 'info irq' and 'info pic' commands use InterruptStatsProvider interface 2016-10-04 10:00:25 +02:00
imx_avic.c
intc.c intc: add an interface to gather statistics/informations on interrupt controllers 2016-10-04 10:00:25 +02:00
ioapic_common.c x86: ioapic: dump version for "info ioapic" 2017-01-16 17:52:35 +01:00
ioapic.c x86: ioapic: fix fail migration when irqchip=split 2017-01-16 17:52:35 +01:00
lm32_pic.c intc: make HMP 'info irq' and 'info pic' commands use InterruptStatsProvider interface 2016-10-04 10:00:25 +02:00
Makefile.objs nios2: Add IIC interrupt controller emulation 2017-01-24 13:10:35 -08:00
mips_gic.c
nios2_iic.c nios2: Add IIC interrupt controller emulation 2017-01-24 13:10:35 -08:00
omap_intc.c
openpic_kvm.c
openpic.c
pl190.c
puv3_intc.c
realview_gic.c
s390_flic_kvm.c s390x/flic: fix compilation of kvm flic 2017-01-26 10:33:48 +01:00
s390_flic.c
sh_intc.c
slavio_intctl.c intc: make HMP 'info irq' and 'info pic' commands use InterruptStatsProvider interface 2016-10-04 10:00:25 +02:00
trace-events * QOM interface fix (Eduardo) 2017-01-20 16:42:07 +00:00
vgic_common.h
xics_kvm.c ppc/xics: add a xics_set_nr_servers common routine 2016-10-28 09:36:58 +11:00
xics_spapr.c pseries: Move construction of /interrupt-controller fdt node 2016-10-28 09:38:26 +11:00
xics.c ppc/xics: change the icp_ routines API to use an 'ICPState *' argument 2016-10-28 09:36:58 +11:00
xilinx_intc.c