diff options
Diffstat (limited to 'arch/arm/kvm/reset.c')
| -rw-r--r-- | arch/arm/kvm/reset.c | 9 | 
1 files changed, 8 insertions, 1 deletions
| diff --git a/arch/arm/kvm/reset.c b/arch/arm/kvm/reset.c index 4b5e802e57d1..1da8b2d14550 100644 --- a/arch/arm/kvm/reset.c +++ b/arch/arm/kvm/reset.c @@ -37,6 +37,11 @@ static struct kvm_regs cortexa_regs_reset = {  	.usr_regs.ARM_cpsr = SVC_MODE | PSR_A_BIT | PSR_I_BIT | PSR_F_BIT,  }; +static const struct kvm_irq_level cortexa_ptimer_irq = { +	{ .irq = 30 }, +	.level = 1, +}; +  static const struct kvm_irq_level cortexa_vtimer_irq = {  	{ .irq = 27 },  	.level = 1, @@ -58,6 +63,7 @@ int kvm_reset_vcpu(struct kvm_vcpu *vcpu)  {  	struct kvm_regs *reset_regs;  	const struct kvm_irq_level *cpu_vtimer_irq; +	const struct kvm_irq_level *cpu_ptimer_irq;  	switch (vcpu->arch.target) {  	case KVM_ARM_TARGET_CORTEX_A7: @@ -65,6 +71,7 @@ int kvm_reset_vcpu(struct kvm_vcpu *vcpu)  		reset_regs = &cortexa_regs_reset;  		vcpu->arch.midr = read_cpuid_id();  		cpu_vtimer_irq = &cortexa_vtimer_irq; +		cpu_ptimer_irq = &cortexa_ptimer_irq;  		break;  	default:  		return -ENODEV; @@ -77,5 +84,5 @@ int kvm_reset_vcpu(struct kvm_vcpu *vcpu)  	kvm_reset_coprocs(vcpu);  	/* Reset arch_timer context */ -	return kvm_timer_vcpu_reset(vcpu, cpu_vtimer_irq); +	return kvm_timer_vcpu_reset(vcpu, cpu_vtimer_irq, cpu_ptimer_irq);  } | 
