diff options
Diffstat (limited to 'include/uapi/linux/kvm.h')
| -rw-r--r-- | include/uapi/linux/kvm.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h index a8f4ee5d2e82..e11d8f170a62 100644 --- a/include/uapi/linux/kvm.h +++ b/include/uapi/linux/kvm.h | |||
| @@ -171,6 +171,7 @@ struct kvm_pit_config { | |||
| 171 | #define KVM_EXIT_WATCHDOG 21 | 171 | #define KVM_EXIT_WATCHDOG 21 |
| 172 | #define KVM_EXIT_S390_TSCH 22 | 172 | #define KVM_EXIT_S390_TSCH 22 |
| 173 | #define KVM_EXIT_EPR 23 | 173 | #define KVM_EXIT_EPR 23 |
| 174 | #define KVM_EXIT_SYSTEM_EVENT 24 | ||
| 174 | 175 | ||
| 175 | /* For KVM_EXIT_INTERNAL_ERROR */ | 176 | /* For KVM_EXIT_INTERNAL_ERROR */ |
| 176 | /* Emulate instruction failed. */ | 177 | /* Emulate instruction failed. */ |
| @@ -301,6 +302,13 @@ struct kvm_run { | |||
| 301 | struct { | 302 | struct { |
| 302 | __u32 epr; | 303 | __u32 epr; |
| 303 | } epr; | 304 | } epr; |
| 305 | /* KVM_EXIT_SYSTEM_EVENT */ | ||
| 306 | struct { | ||
| 307 | #define KVM_SYSTEM_EVENT_SHUTDOWN 1 | ||
| 308 | #define KVM_SYSTEM_EVENT_RESET 2 | ||
| 309 | __u32 type; | ||
| 310 | __u64 flags; | ||
| 311 | } system_event; | ||
| 304 | /* Fix the size of the union. */ | 312 | /* Fix the size of the union. */ |
| 305 | char padding[256]; | 313 | char padding[256]; |
| 306 | }; | 314 | }; |
| @@ -416,6 +424,8 @@ struct kvm_s390_psw { | |||
| 416 | #define KVM_S390_INT_PFAULT_INIT 0xfffe0004u | 424 | #define KVM_S390_INT_PFAULT_INIT 0xfffe0004u |
| 417 | #define KVM_S390_INT_PFAULT_DONE 0xfffe0005u | 425 | #define KVM_S390_INT_PFAULT_DONE 0xfffe0005u |
| 418 | #define KVM_S390_MCHK 0xfffe1000u | 426 | #define KVM_S390_MCHK 0xfffe1000u |
| 427 | #define KVM_S390_INT_CLOCK_COMP 0xffff1004u | ||
| 428 | #define KVM_S390_INT_CPU_TIMER 0xffff1005u | ||
| 419 | #define KVM_S390_INT_VIRTIO 0xffff2603u | 429 | #define KVM_S390_INT_VIRTIO 0xffff2603u |
| 420 | #define KVM_S390_INT_SERVICE 0xffff2401u | 430 | #define KVM_S390_INT_SERVICE 0xffff2401u |
| 421 | #define KVM_S390_INT_EMERGENCY 0xffff1201u | 431 | #define KVM_S390_INT_EMERGENCY 0xffff1201u |
| @@ -515,6 +525,7 @@ enum { | |||
| 515 | kvm_ioeventfd_flag_nr_pio, | 525 | kvm_ioeventfd_flag_nr_pio, |
| 516 | kvm_ioeventfd_flag_nr_deassign, | 526 | kvm_ioeventfd_flag_nr_deassign, |
| 517 | kvm_ioeventfd_flag_nr_virtio_ccw_notify, | 527 | kvm_ioeventfd_flag_nr_virtio_ccw_notify, |
| 528 | kvm_ioeventfd_flag_nr_fast_mmio, | ||
| 518 | kvm_ioeventfd_flag_nr_max, | 529 | kvm_ioeventfd_flag_nr_max, |
| 519 | }; | 530 | }; |
| 520 | 531 | ||
| @@ -529,7 +540,7 @@ enum { | |||
| 529 | struct kvm_ioeventfd { | 540 | struct kvm_ioeventfd { |
| 530 | __u64 datamatch; | 541 | __u64 datamatch; |
| 531 | __u64 addr; /* legal pio/mmio address */ | 542 | __u64 addr; /* legal pio/mmio address */ |
| 532 | __u32 len; /* 1, 2, 4, or 8 bytes */ | 543 | __u32 len; /* 1, 2, 4, or 8 bytes; or 0 to ignore length */ |
| 533 | __s32 fd; | 544 | __s32 fd; |
| 534 | __u32 flags; | 545 | __u32 flags; |
| 535 | __u8 pad[36]; | 546 | __u8 pad[36]; |
| @@ -743,6 +754,10 @@ struct kvm_ppc_smmu_info { | |||
| 743 | #define KVM_CAP_IOAPIC_POLARITY_IGNORED 97 | 754 | #define KVM_CAP_IOAPIC_POLARITY_IGNORED 97 |
| 744 | #define KVM_CAP_ENABLE_CAP_VM 98 | 755 | #define KVM_CAP_ENABLE_CAP_VM 98 |
| 745 | #define KVM_CAP_S390_IRQCHIP 99 | 756 | #define KVM_CAP_S390_IRQCHIP 99 |
| 757 | #define KVM_CAP_IOEVENTFD_NO_LENGTH 100 | ||
| 758 | #define KVM_CAP_VM_ATTRIBUTES 101 | ||
| 759 | #define KVM_CAP_ARM_PSCI_0_2 102 | ||
| 760 | #define KVM_CAP_PPC_FIXUP_HCALL 103 | ||
| 746 | 761 | ||
| 747 | #ifdef KVM_CAP_IRQ_ROUTING | 762 | #ifdef KVM_CAP_IRQ_ROUTING |
| 748 | 763 | ||
