diff options
Diffstat (limited to 'Documentation/virtual/kvm/ppc-pv.txt')
-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: | |||
174 | That way we can inject an arbitrary amount of code as replacement for a single | 174 | That way we can inject an arbitrary amount of code as replacement for a single |
175 | instruction. This allows us to check for pending interrupts when setting EE=1 | 175 | instruction. This allows us to check for pending interrupts when setting EE=1 |
176 | for example. | 176 | for example. |
177 | |||
178 | Hypercall ABIs in KVM on PowerPC | ||
179 | ================================= | ||
180 | 1) KVM hypercalls (ePAPR) | ||
181 | |||
182 | These are ePAPR compliant hypercall implementation (mentioned above). Even | ||
183 | generic hypercalls are implemented here, like the ePAPR idle hcall. These are | ||
184 | available on all targets. | ||
185 | |||
186 | 2) PAPR hypercalls | ||
187 | |||
188 | PAPR hypercalls are needed to run server PowerPC PAPR guests (-M pseries in QEMU). | ||
189 | These are the same hypercalls that pHyp, the POWER hypervisor implements. Some of | ||
190 | them are handled in the kernel, some are handled in user space. This is only | ||
191 | available on book3s_64. | ||
192 | |||
193 | 3) OSI hypercalls | ||
194 | |||
195 | Mac-on-Linux is another user of KVM on PowerPC, which has its own hypercall (long | ||
196 | before KVM). This is supported to maintain compatibility. All these hypercalls get | ||
197 | forwarded to user space. This is only useful on book3s_32, but can be used with | ||
198 | book3s_64 as well. | ||