diff options
author | Scott Wood <scottwood@freescale.com> | 2011-12-20 10:34:47 -0500 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2012-04-08 05:54:33 -0400 |
commit | 73196cd364a2d972d73fa08da9d81ca3215bed68 (patch) | |
tree | 058b8487bb512b5cde4e827d8aa2525680e6519b /arch/powerpc/kvm/powerpc.c | |
parent | 8fae845f4956de0becc115e926d33eff46722e94 (diff) |
KVM: PPC: e500mc support
Add processor support for e500mc, using hardware virtualization support
(GS-mode).
Current issues include:
- No support for external proxy (coreint) interrupt mode in the guest.
Includes work by Ashish Kalra <Ashish.Kalra@freescale.com>,
Varun Sethi <Varun.Sethi@freescale.com>, and
Liu Yu <yu.liu@freescale.com>.
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 'arch/powerpc/kvm/powerpc.c')
-rw-r--r-- | arch/powerpc/kvm/powerpc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c index 6a530e4b3e7c..14bf8d59bc2a 100644 --- a/arch/powerpc/kvm/powerpc.c +++ b/arch/powerpc/kvm/powerpc.c | |||
@@ -235,7 +235,7 @@ int kvm_dev_ioctl_check_extension(long ext) | |||
235 | case KVM_CAP_PPC_PAIRED_SINGLES: | 235 | case KVM_CAP_PPC_PAIRED_SINGLES: |
236 | case KVM_CAP_PPC_OSI: | 236 | case KVM_CAP_PPC_OSI: |
237 | case KVM_CAP_PPC_GET_PVINFO: | 237 | case KVM_CAP_PPC_GET_PVINFO: |
238 | #ifdef CONFIG_KVM_E500 | 238 | #if defined(CONFIG_KVM_E500) || defined(CONFIG_KVM_E500MC) |
239 | case KVM_CAP_SW_TLB: | 239 | case KVM_CAP_SW_TLB: |
240 | #endif | 240 | #endif |
241 | r = 1; | 241 | r = 1; |
@@ -629,7 +629,7 @@ static int kvm_vcpu_ioctl_enable_cap(struct kvm_vcpu *vcpu, | |||
629 | r = 0; | 629 | r = 0; |
630 | vcpu->arch.papr_enabled = true; | 630 | vcpu->arch.papr_enabled = true; |
631 | break; | 631 | break; |
632 | #ifdef CONFIG_KVM_E500 | 632 | #if defined(CONFIG_KVM_E500) || defined(CONFIG_KVM_E500MC) |
633 | case KVM_CAP_SW_TLB: { | 633 | case KVM_CAP_SW_TLB: { |
634 | struct kvm_config_tlb cfg; | 634 | struct kvm_config_tlb cfg; |
635 | void __user *user_ptr = (void __user *)(uintptr_t)cap->args[0]; | 635 | void __user *user_ptr = (void __user *)(uintptr_t)cap->args[0]; |
@@ -706,7 +706,7 @@ long kvm_arch_vcpu_ioctl(struct file *filp, | |||
706 | break; | 706 | break; |
707 | } | 707 | } |
708 | 708 | ||
709 | #ifdef CONFIG_KVM_E500 | 709 | #if defined(CONFIG_KVM_E500) || defined(CONFIG_KVM_E500MC) |
710 | case KVM_DIRTY_TLB: { | 710 | case KVM_DIRTY_TLB: { |
711 | struct kvm_dirty_tlb dirty; | 711 | struct kvm_dirty_tlb dirty; |
712 | r = -EFAULT; | 712 | r = -EFAULT; |