arm64: kvm: allows kvm cpu hotplug
[firefly-linux-kernel-4.4.55.git] / arch / arm64 / kvm / reset.c
index f34745cb3d236fe0a4731f8d02031f8ff764d69c..d6e155a212dc42fa9696879c710a395fc8be2779 100644 (file)
@@ -29,7 +29,9 @@
 #include <asm/cputype.h>
 #include <asm/ptrace.h>
 #include <asm/kvm_arm.h>
+#include <asm/kvm_asm.h>
 #include <asm/kvm_coproc.h>
+#include <asm/kvm_mmu.h>
 
 /*
  * ARMv8 Reset Values
@@ -123,3 +125,15 @@ int kvm_reset_vcpu(struct kvm_vcpu *vcpu)
        /* Reset timer */
        return kvm_timer_vcpu_reset(vcpu, cpu_vtimer_irq);
 }
+
+extern char __hyp_idmap_text_start[];
+
+phys_addr_t kvm_hyp_reset_entry(void)
+{
+       unsigned long offset;
+
+       offset = (unsigned long)__kvm_hyp_reset
+                - ((unsigned long)__hyp_idmap_text_start & PAGE_MASK);
+
+       return TRAMPOLINE_VA + offset;
+}