summaryrefslogtreecommitdiff
path: root/src/cpu/kvm/vm.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/kvm/vm.hh')
-rw-r--r--src/cpu/kvm/vm.hh17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/cpu/kvm/vm.hh b/src/cpu/kvm/vm.hh
index d21fc2660..8f834a06e 100644
--- a/src/cpu/kvm/vm.hh
+++ b/src/cpu/kvm/vm.hh
@@ -398,6 +398,23 @@ class KvmVM : public SimObject
/** Global KVM interface */
Kvm kvm;
+#if defined(__aarch64__)
+ public: // ARM-specific
+ /**
+ * Ask the kernel for the preferred CPU target to simulate.
+ *
+ * When creating an ARM vCPU in Kvm, we need to initialize it with
+ * a call to BaseArmKvmCPU::kvmArmVCpuInit(). When calling this
+ * function, we need to know what type of CPU the host has. This
+ * call sets up the kvm_vcpu_init structure with the values the
+ * kernel wants.
+ *
+ * @param[out] target Target structure to initialize.
+ */
+ void kvmArmPreferredTarget(struct kvm_vcpu_init &target) const;
+
+#endif
+
protected:
/**
* VM CPU initialization code.