diff options
| author | Olof Johansson <olof@lixom.net> | 2013-02-12 15:20:19 -0800 | 
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2013-02-12 15:20:19 -0800 | 
| commit | b221498e5d276b4ea5a50ba545b75f8cf2c2edf5 (patch) | |
| tree | 55461b2678d331ce7f06cca728d5668f9ab7a1e1 /arch/arm/kvm/mmio.c | |
| parent | 0582b05366f39ea1024450f18cc801c7f42bbbbb (diff) | |
| parent | 967f84275ba74eac696f798ce1a780285170b5e7 (diff) | |
| download | olio-linux-3.10-b221498e5d276b4ea5a50ba545b75f8cf2c2edf5.tar.xz olio-linux-3.10-b221498e5d276b4ea5a50ba545b75f8cf2c2edf5.zip  | |
Merge branch 'kvm-arm/timer' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into next/virt
From Marc Zyngier, this branch enables virtual GIC and timer for KVM/ARM.
* 'kvm-arm/timer' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms:
  ARM: KVM: arch_timers: Wire the init code and config option
  ARM: KVM: arch_timers: Add timer world switch
  ARM: KVM: arch_timers: Add guest timer core support
  ARM: KVM: Add VGIC configuration option
  ARM: KVM: VGIC initialisation code
  ARM: KVM: VGIC control interface world switch
  ARM: KVM: VGIC interrupt injection
  ARM: KVM: vgic: retire queued, disabled interrupts
  ARM: KVM: VGIC virtual CPU interface management
  ARM: KVM: VGIC distributor handling
  ARM: KVM: VGIC accept vcpu and dist base addresses from user space
  ARM: KVM: Initial VGIC infrastructure code
  ARM: KVM: Keep track of currently running vcpus
  KVM: ARM: Introduce KVM_ARM_SET_DEVICE_ADDR ioctl
  ARM: gic: add __ASSEMBLY__ guard to C definitions
  ARM: gic: define GICH offsets for VGIC support
  ARM: gic: add missing distributor defintions
Diffstat (limited to 'arch/arm/kvm/mmio.c')
| -rw-r--r-- | arch/arm/kvm/mmio.c | 3 | 
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/kvm/mmio.c b/arch/arm/kvm/mmio.c index 0144baf8290..98a870ff1a5 100644 --- a/arch/arm/kvm/mmio.c +++ b/arch/arm/kvm/mmio.c @@ -148,6 +148,9 @@ int io_mem_abort(struct kvm_vcpu *vcpu, struct kvm_run *run,  	if (mmio.is_write)  		memcpy(mmio.data, vcpu_reg(vcpu, rt), mmio.len); +	if (vgic_handle_mmio(vcpu, run, &mmio)) +		return 1; +  	kvm_prepare_mmio(run, &mmio);  	return 0;  }  |