docs: kvm: convert arm/hyp-abi.txt to ReST
- Add proper markups for titles; - Adjust whitespaces and blank lines to match ReST needs; - Mark literal blocks as such. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
106ee47dc6
commit
69bf758bc8
|
@ -1,4 +1,8 @@
|
||||||
* Internal ABI between the kernel and HYP
|
.. SPDX-License-Identifier: GPL-2.0
|
||||||
|
|
||||||
|
=======================================
|
||||||
|
Internal ABI between the kernel and HYP
|
||||||
|
=======================================
|
||||||
|
|
||||||
This file documents the interaction between the Linux kernel and the
|
This file documents the interaction between the Linux kernel and the
|
||||||
hypervisor layer when running Linux as a hypervisor (for example
|
hypervisor layer when running Linux as a hypervisor (for example
|
||||||
|
@ -19,25 +23,31 @@ and only act on individual CPUs.
|
||||||
Unless specified otherwise, any built-in hypervisor must implement
|
Unless specified otherwise, any built-in hypervisor must implement
|
||||||
these functions (see arch/arm{,64}/include/asm/virt.h):
|
these functions (see arch/arm{,64}/include/asm/virt.h):
|
||||||
|
|
||||||
* r0/x0 = HVC_SET_VECTORS
|
* ::
|
||||||
r1/x1 = vectors
|
|
||||||
|
r0/x0 = HVC_SET_VECTORS
|
||||||
|
r1/x1 = vectors
|
||||||
|
|
||||||
Set HVBAR/VBAR_EL2 to 'vectors' to enable a hypervisor. 'vectors'
|
Set HVBAR/VBAR_EL2 to 'vectors' to enable a hypervisor. 'vectors'
|
||||||
must be a physical address, and respect the alignment requirements
|
must be a physical address, and respect the alignment requirements
|
||||||
of the architecture. Only implemented by the initial stubs, not by
|
of the architecture. Only implemented by the initial stubs, not by
|
||||||
Linux hypervisors.
|
Linux hypervisors.
|
||||||
|
|
||||||
* r0/x0 = HVC_RESET_VECTORS
|
* ::
|
||||||
|
|
||||||
|
r0/x0 = HVC_RESET_VECTORS
|
||||||
|
|
||||||
Turn HYP/EL2 MMU off, and reset HVBAR/VBAR_EL2 to the initials
|
Turn HYP/EL2 MMU off, and reset HVBAR/VBAR_EL2 to the initials
|
||||||
stubs' exception vector value. This effectively disables an existing
|
stubs' exception vector value. This effectively disables an existing
|
||||||
hypervisor.
|
hypervisor.
|
||||||
|
|
||||||
* r0/x0 = HVC_SOFT_RESTART
|
* ::
|
||||||
r1/x1 = restart address
|
|
||||||
x2 = x0's value when entering the next payload (arm64)
|
r0/x0 = HVC_SOFT_RESTART
|
||||||
x3 = x1's value when entering the next payload (arm64)
|
r1/x1 = restart address
|
||||||
x4 = x2's value when entering the next payload (arm64)
|
x2 = x0's value when entering the next payload (arm64)
|
||||||
|
x3 = x1's value when entering the next payload (arm64)
|
||||||
|
x4 = x2's value when entering the next payload (arm64)
|
||||||
|
|
||||||
Mask all exceptions, disable the MMU, move the arguments into place
|
Mask all exceptions, disable the MMU, move the arguments into place
|
||||||
(arm64 only), and jump to the restart address while at HYP/EL2. This
|
(arm64 only), and jump to the restart address while at HYP/EL2. This
|
|
@ -7,4 +7,5 @@ ARM
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
|
|
||||||
|
hyp-abi
|
||||||
pvtime
|
pvtime
|
||||||
|
|
Loading…
Reference in a new issue