diff options
author | Scott Wood <scottwood@freescale.com> | 2011-08-18 16:25:21 -0400 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2012-03-05 07:52:24 -0500 |
commit | dc83b8bc0256ee682506ed83853a98eaba529c6f (patch) | |
tree | 0d5f73b725392104320894d606bba10151a9ea3c /include/linux/kvm.h | |
parent | 0164c0f0c404017fb04defb0ceb23fd1c3c3a53e (diff) |
KVM: PPC: e500: MMU API
This implements a shared-memory API for giving host userspace access to
the guest's TLB.
Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'include/linux/kvm.h')
-rw-r--r-- | include/linux/kvm.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/linux/kvm.h b/include/linux/kvm.h index 245bcb3a0fcd..fa029ced4bd5 100644 --- a/include/linux/kvm.h +++ b/include/linux/kvm.h | |||
@@ -581,6 +581,7 @@ struct kvm_ppc_pvinfo { | |||
581 | #define KVM_CAP_PPC_RMA 65 | 581 | #define KVM_CAP_PPC_RMA 65 |
582 | #define KVM_CAP_MAX_VCPUS 66 /* returns max vcpus per vm */ | 582 | #define KVM_CAP_MAX_VCPUS 66 /* returns max vcpus per vm */ |
583 | #define KVM_CAP_PPC_PAPR 68 | 583 | #define KVM_CAP_PPC_PAPR 68 |
584 | #define KVM_CAP_SW_TLB 69 | ||
584 | #define KVM_CAP_S390_GMAP 71 | 585 | #define KVM_CAP_S390_GMAP 71 |
585 | #define KVM_CAP_TSC_DEADLINE_TIMER 72 | 586 | #define KVM_CAP_TSC_DEADLINE_TIMER 72 |
586 | #define KVM_CAP_S390_UCONTROL 73 | 587 | #define KVM_CAP_S390_UCONTROL 73 |
@@ -664,6 +665,21 @@ struct kvm_clock_data { | |||
664 | __u32 pad[9]; | 665 | __u32 pad[9]; |
665 | }; | 666 | }; |
666 | 667 | ||
668 | #define KVM_MMU_FSL_BOOKE_NOHV 0 | ||
669 | #define KVM_MMU_FSL_BOOKE_HV 1 | ||
670 | |||
671 | struct kvm_config_tlb { | ||
672 | __u64 params; | ||
673 | __u64 array; | ||
674 | __u32 mmu_type; | ||
675 | __u32 array_len; | ||
676 | }; | ||
677 | |||
678 | struct kvm_dirty_tlb { | ||
679 | __u64 bitmap; | ||
680 | __u32 num_dirty; | ||
681 | }; | ||
682 | |||
667 | /* | 683 | /* |
668 | * ioctls for VM fds | 684 | * ioctls for VM fds |
669 | */ | 685 | */ |
@@ -801,6 +817,8 @@ struct kvm_s390_ucas_mapping { | |||
801 | #define KVM_CREATE_SPAPR_TCE _IOW(KVMIO, 0xa8, struct kvm_create_spapr_tce) | 817 | #define KVM_CREATE_SPAPR_TCE _IOW(KVMIO, 0xa8, struct kvm_create_spapr_tce) |
802 | /* Available with KVM_CAP_RMA */ | 818 | /* Available with KVM_CAP_RMA */ |
803 | #define KVM_ALLOCATE_RMA _IOR(KVMIO, 0xa9, struct kvm_allocate_rma) | 819 | #define KVM_ALLOCATE_RMA _IOR(KVMIO, 0xa9, struct kvm_allocate_rma) |
820 | /* Available with KVM_CAP_SW_TLB */ | ||
821 | #define KVM_DIRTY_TLB _IOW(KVMIO, 0xaa, struct kvm_dirty_tlb) | ||
804 | 822 | ||
805 | #define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0) | 823 | #define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0) |
806 | 824 | ||