diff options
author | Alexander Graf <agraf@suse.de> | 2012-08-07 13:10:26 +0530 |
---|---|---|
committer | Marcelo Tosatti <mtosatti@redhat.com> | 2012-08-13 17:39:59 -0300 |
commit | 6024f1a4dd066d54213cc17f821e19e3062298ca (patch) | |
tree | 743e4c0b491056c762f985ee2e437da24b29dee2 /Documentation | |
parent | e423ca155d3f5f16b46e30de9c818875b1fd617d (diff) | |
download | blackbird-op-linux-6024f1a4dd066d54213cc17f821e19e3062298ca.tar.gz blackbird-op-linux-6024f1a4dd066d54213cc17f821e19e3062298ca.zip |
KVM: Add ppc hypercall documentation
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Raghavendra K T <raghavendra.kt@linux.vnet.ibm.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/virtual/kvm/ppc-pv.txt | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/Documentation/virtual/kvm/ppc-pv.txt b/Documentation/virtual/kvm/ppc-pv.txt index 4911cf95c67e..4cd076febb02 100644 --- a/Documentation/virtual/kvm/ppc-pv.txt +++ b/Documentation/virtual/kvm/ppc-pv.txt @@ -174,3 +174,25 @@ following: That way we can inject an arbitrary amount of code as replacement for a single instruction. This allows us to check for pending interrupts when setting EE=1 for example. + +Hypercall ABIs in KVM on PowerPC +================================= +1) KVM hypercalls (ePAPR) + +These are ePAPR compliant hypercall implementation (mentioned above). Even +generic hypercalls are implemented here, like the ePAPR idle hcall. These are +available on all targets. + +2) PAPR hypercalls + +PAPR hypercalls are needed to run server PowerPC PAPR guests (-M pseries in QEMU). +These are the same hypercalls that pHyp, the POWER hypervisor implements. Some of +them are handled in the kernel, some are handled in user space. This is only +available on book3s_64. + +3) OSI hypercalls + +Mac-on-Linux is another user of KVM on PowerPC, which has its own hypercall (long +before KVM). This is supported to maintain compatibility. All these hypercalls get +forwarded to user space. This is only useful on book3s_32, but can be used with +book3s_64 as well. |