aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/kvm.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/kvm.h')
-rw-r--r--include/linux/kvm.h20
1 files changed, 13 insertions, 7 deletions
diff --git a/include/linux/kvm.h b/include/linux/kvm.h
index 55ef181521ff..2c366b52f505 100644
--- a/include/linux/kvm.h
+++ b/include/linux/kvm.h
@@ -161,6 +161,7 @@ struct kvm_pit_config {
161#define KVM_EXIT_NMI 16 161#define KVM_EXIT_NMI 16
162#define KVM_EXIT_INTERNAL_ERROR 17 162#define KVM_EXIT_INTERNAL_ERROR 17
163#define KVM_EXIT_OSI 18 163#define KVM_EXIT_OSI 18
164#define KVM_EXIT_PAPR_HCALL 19
164 165
165/* For KVM_EXIT_INTERNAL_ERROR */ 166/* For KVM_EXIT_INTERNAL_ERROR */
166#define KVM_INTERNAL_ERROR_EMULATION 1 167#define KVM_INTERNAL_ERROR_EMULATION 1
@@ -264,6 +265,11 @@ struct kvm_run {
264 struct { 265 struct {
265 __u64 gprs[32]; 266 __u64 gprs[32];
266 } osi; 267 } osi;
268 struct {
269 __u64 nr;
270 __u64 ret;
271 __u64 args[9];
272 } papr_hcall;
267 /* Fix the size of the union. */ 273 /* Fix the size of the union. */
268 char padding[256]; 274 char padding[256];
269 }; 275 };
@@ -544,6 +550,9 @@ struct kvm_ppc_pvinfo {
544#define KVM_CAP_TSC_CONTROL 60 550#define KVM_CAP_TSC_CONTROL 60
545#define KVM_CAP_GET_TSC_KHZ 61 551#define KVM_CAP_GET_TSC_KHZ 61
546#define KVM_CAP_PPC_BOOKE_SREGS 62 552#define KVM_CAP_PPC_BOOKE_SREGS 62
553#define KVM_CAP_SPAPR_TCE 63
554#define KVM_CAP_PPC_SMT 64
555#define KVM_CAP_PPC_RMA 65
547 556
548#ifdef KVM_CAP_IRQ_ROUTING 557#ifdef KVM_CAP_IRQ_ROUTING
549 558
@@ -746,6 +755,9 @@ struct kvm_clock_data {
746/* Available with KVM_CAP_XCRS */ 755/* Available with KVM_CAP_XCRS */
747#define KVM_GET_XCRS _IOR(KVMIO, 0xa6, struct kvm_xcrs) 756#define KVM_GET_XCRS _IOR(KVMIO, 0xa6, struct kvm_xcrs)
748#define KVM_SET_XCRS _IOW(KVMIO, 0xa7, struct kvm_xcrs) 757#define KVM_SET_XCRS _IOW(KVMIO, 0xa7, struct kvm_xcrs)
758#define KVM_CREATE_SPAPR_TCE _IOW(KVMIO, 0xa8, struct kvm_create_spapr_tce)
759/* Available with KVM_CAP_RMA */
760#define KVM_ALLOCATE_RMA _IOR(KVMIO, 0xa9, struct kvm_allocate_rma)
749 761
750#define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0) 762#define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0)
751 763
@@ -773,20 +785,14 @@ struct kvm_assigned_pci_dev {
773 785
774struct kvm_assigned_irq { 786struct kvm_assigned_irq {
775 __u32 assigned_dev_id; 787 __u32 assigned_dev_id;
776 __u32 host_irq; 788 __u32 host_irq; /* ignored (legacy field) */
777 __u32 guest_irq; 789 __u32 guest_irq;
778 __u32 flags; 790 __u32 flags;
779 union { 791 union {
780 struct {
781 __u32 addr_lo;
782 __u32 addr_hi;
783 __u32 data;
784 } guest_msi;
785 __u32 reserved[12]; 792 __u32 reserved[12];
786 }; 793 };
787}; 794};
788 795
789
790struct kvm_assigned_msix_nr { 796struct kvm_assigned_msix_nr {
791 __u32 assigned_dev_id; 797 __u32 assigned_dev_id;
792 __u16 entry_nr; 798 __u16 entry_nr;