OSDN Git Service

arm: vgic device control api support
authorChristoffer Dall <christoffer.dall@linaro.org>
Wed, 26 Feb 2014 17:20:00 +0000 (17:20 +0000)
committerPeter Maydell <peter.maydell@linaro.org>
Wed, 26 Feb 2014 17:20:00 +0000 (17:20 +0000)
commit1da41cc1c6c3efbe2ed47228068bd80dbdc49d0e
tree2fa16d32851b0889de1f247f5ae59d6f2246fce0
parent0a6a7ccaae4015aa02bdbce75bafb9d868636655
arm: vgic device control api support

Support creating the ARM vgic device through the device control API and
setting the base address for the distributor and cpu interfaces in KVM
VMs using this API.

Because the older KVM_CREATE_IRQCHIP interface needs the irq chip to be
created prior to creating the VCPUs, we first test if we can use the
device control API in kvm_arch_irqchip_create (using the test flag from
the device control API).  If we cannot, it means we have to fall back to
KVM_CREATE_IRQCHIP and use the older ioctl at this point in time.  If
however, we can use the device control API, we don't do anything and
wait until the arm_gic_kvm driver initializes and let that use the
device control API.

Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Message-id: 1392687720-26806-5-git-send-email-christoffer.dall@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/intc/arm_gic_kvm.c
include/hw/intc/arm_gic_common.h
target-arm/kvm.c
target-arm/kvm_arm.h