qemu/hw/intc
Peter Maydell 51fd06e0ee hw/intc/arm_gic: Fix handling of GICC_APR<n>, GICC_NSAPR<n> registers
A GICv2 has both GICC_APR<n> and GICC_NSAPR<n> registers, with
the latter holding the active priority bits for Group 1 interrupts
(usually Nonsecure interrupts), and the Nonsecure view of the
GICC_APR<n> is the second half of the GICC_NSAPR<n> registers.
Turn our half-hearted implementation of APR<n> into a proper
implementation of both APR<n> and NSAPR<n>:

 * Add the underlying state for NSAPR<n>
 * Make sure APR<n> aren't visible for pre-GICv2
 * Implement reading of NSAPR<n>
 * Make non-secure reads of APR<n> behave correctly
 * Implement writing to APR<n> and NSAPR<n>

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1438089748-5528-4-git-send-email-peter.maydell@linaro.org
2015-09-08 17:38:42 +01:00
..
allwinner-a10-pic.c Convert ffs() != 0 callers to ctz32() 2015-04-28 15:36:08 +02:00
apic_common.c migration: Use normal VMStateDescriptions for Subsections 2015-06-12 06:53:57 +02:00
apic.c apic: convert ->busdev.qdev casts to C casts 2015-06-02 15:15:52 -03:00
arm_gic_common.c hw/intc/arm_gic: Fix handling of GICC_APR<n>, GICC_NSAPR<n> registers 2015-09-08 17:38:42 +01:00
arm_gic_kvm.c hw/arm/gic: Kill code duplication 2015-08-13 11:26:21 +01:00
arm_gic.c hw/intc/arm_gic: Fix handling of GICC_APR<n>, GICC_NSAPR<n> registers 2015-09-08 17:38:42 +01:00
arm_gicv2m.c arm_gicv2m: set kvm_gsi_direct_mapping and kvm_msi_via_irqfd_allowed 2015-06-02 14:56:25 +01:00
armv7m_nvic.c armv7m_nvic: Implement ICSR without using internal GIC state 2015-09-08 17:38:42 +01:00
etraxfs_pic.c Fix remaining warnings from Sparse (void return) 2015-03-19 11:11:55 +03:00
exynos4210_combiner.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
exynos4210_gic.c hw/intc/exynos4210_gic.c: Fix memory leak by adjusting order 2015-06-03 14:21:24 +03:00
gic_internal.h hw/intc/arm_gic: Change behavior of IAR writes 2015-05-12 11:57:18 +01: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 savevm: Remove all the unneeded version_minimum_id_old (ppc) 2014-06-16 04:55:26 +02:00
i8259_common.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
i8259.c hmp: Name HMP info handler functions hmp_info_SUBCOMMAND() 2015-02-18 11:58:50 +01:00
imx_avic.c i.MX: Fix Coding style for AVIC emulator. 2015-08-13 11:26:20 +01:00
ioapic_common.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
ioapic.c qemu: x86: ignore ioapic polarity 2014-03-09 21:09:38 +02:00
lm32_pic.c hmp: Name HMP info handler functions hmp_info_SUBCOMMAND() 2015-02-18 11:58:50 +01:00
Makefile.objs arm_gicv2m: Add GICv2m widget to support MSIs 2015-06-02 14:56:25 +01:00
omap_intc.c omap_intc: convert ffs(3) to ctz32() in omap_inth_sir_update() 2015-04-28 15:36:08 +02:00
openpic_kvm.c KVM_CAP_IRQFD and KVM_CAP_IRQFD_RESAMPLE checks 2014-12-15 12:21:01 +01:00
openpic.c qerror: Clean up QERR_ macros to expand into a single string 2015-06-22 18:20:40 +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
s390_flic_kvm.c s390x/kvm: make setting of in-kernel irq routes more efficient 2015-09-07 16:10:43 +02:00
s390_flic.c s390x: Replace unchecked qdev_init() by qdev_init_nofail() 2015-03-16 10:15:44 +01:00
sh_intc.c cpu: Make first_cpu and next_cpu CPUState 2013-07-09 21:32:54 +02:00
slavio_intctl.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
xics_kvm.c xics_kvm: Don't enable KVM_CAP_IRQ_XICS if already enabled 2015-07-07 17:44:52 +02:00
xics.c spapr: Merge sPAPREnvironment into sPAPRMachineState 2015-07-07 17:44:50 +02:00
xilinx_intc.c intc: xilinx_uartlite: Convert SBD::init -> instance_init 2014-06-09 00:33:03 +02:00