linux_dsm_epyc7002/virt/kvm/arm/vgic
Eric Auger b0442ee227 KVM: arm/arm64: vgic-new: vgic_init: implement map_resources
map_resources is the last initialization step. It is executed on
first VCPU run. At that stage the code checks that userspace has provided
the base addresses for the relevant VGIC regions, which depend on the
type of VGIC that is exposed to the guest.  Also we check if the two
regions overlap.
If the checks succeeded, we register the respective register frames with
the kvm_io_bus framework.

If we emulate a GICv2, the function also forces vgic_init execution if
it has not been executed yet. Also we map the virtual GIC CPU interface
onto the guest's CPU interface.

Signed-off-by: Eric Auger <eric.auger@linaro.org>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
2016-05-20 15:40:07 +02:00
..
vgic-init.c KVM: arm/arm64: vgic-new: vgic_init: implement map_resources 2016-05-20 15:40:07 +02:00
vgic-kvm-device.c KVM: arm/arm64: vgic-new: Add userland GIC CPU interface access 2016-05-20 15:40:05 +02:00
vgic-mmio-v2.c KVM: arm/arm64: vgic-new: Add userland GIC CPU interface access 2016-05-20 15:40:05 +02:00
vgic-mmio-v3.c KVM: arm/arm64: vgic-new: Add GICv3 SGI system register trap handler 2016-05-20 15:39:59 +02:00
vgic-mmio.c KVM: arm/arm64: vgic-new: Add GICv3 MMIO handling framework 2016-05-20 15:39:56 +02:00
vgic-mmio.h KVM: arm/arm64: vgic-new: Add GICv3 MMIO handling framework 2016-05-20 15:39:56 +02:00
vgic-v2.c KVM: arm/arm64: vgic-new: vgic_init: implement map_resources 2016-05-20 15:40:07 +02:00
vgic-v3.c KVM: arm/arm64: vgic-new: vgic_init: implement map_resources 2016-05-20 15:40:07 +02:00
vgic.c KVM: arm/arm64: vgic-new: vgic_init: implement vgic_init 2016-05-20 15:40:06 +02:00
vgic.h KVM: arm/arm64: vgic-new: vgic_init: implement map_resources 2016-05-20 15:40:07 +02:00