|
@@ -235,6 +235,7 @@ struct kvm_hyperv_exit {
|
|
|
#define KVM_EXIT_S390_STSI 25
|
|
|
#define KVM_EXIT_IOAPIC_EOI 26
|
|
|
#define KVM_EXIT_HYPERV 27
|
|
|
+#define KVM_EXIT_ARM_NISV 28
|
|
|
|
|
|
/* For KVM_EXIT_INTERNAL_ERROR */
|
|
|
/* Emulate instruction failed. */
|
|
@@ -394,6 +395,11 @@ struct kvm_run {
|
|
|
} eoi;
|
|
|
/* KVM_EXIT_HYPERV */
|
|
|
struct kvm_hyperv_exit hyperv;
|
|
|
+ /* KVM_EXIT_ARM_NISV */
|
|
|
+ struct {
|
|
|
+ __u64 esr_iss;
|
|
|
+ __u64 fault_ipa;
|
|
|
+ } arm_nisv;
|
|
|
/* Fix the size of the union. */
|
|
|
char padding[256];
|
|
|
};
|
|
@@ -1000,6 +1006,9 @@ struct kvm_ppc_resize_hpt {
|
|
|
#define KVM_CAP_PMU_EVENT_FILTER 173
|
|
|
#define KVM_CAP_ARM_IRQ_LINE_LAYOUT_2 174
|
|
|
#define KVM_CAP_HYPERV_DIRECT_TLBFLUSH 175
|
|
|
+#define KVM_CAP_PPC_GUEST_DEBUG_SSTEP 176
|
|
|
+#define KVM_CAP_ARM_NISV_TO_USER 177
|
|
|
+#define KVM_CAP_ARM_INJECT_EXT_DABT 178
|
|
|
|
|
|
#ifdef KVM_CAP_IRQ_ROUTING
|
|
|
|
|
@@ -1227,6 +1236,8 @@ enum kvm_device_type {
|
|
|
#define KVM_DEV_TYPE_ARM_VGIC_ITS KVM_DEV_TYPE_ARM_VGIC_ITS
|
|
|
KVM_DEV_TYPE_XIVE,
|
|
|
#define KVM_DEV_TYPE_XIVE KVM_DEV_TYPE_XIVE
|
|
|
+ KVM_DEV_TYPE_ARM_PV_TIME,
|
|
|
+#define KVM_DEV_TYPE_ARM_PV_TIME KVM_DEV_TYPE_ARM_PV_TIME
|
|
|
KVM_DEV_TYPE_MAX,
|
|
|
};
|
|
|
|