387f878a | 19-Aug-2024 |
Andrew Turner <andrew@FreeBSD.org> |
arm64/vmm: Teach vmm_arm.c about VHE
Most of the code is identical however some, e.g. managing EL2 memory or setting EL2 registers, are unneeded under VHE as the kernel is in EL2 so can manage these
arm64/vmm: Teach vmm_arm.c about VHE
Most of the code is identical however some, e.g. managing EL2 memory or setting EL2 registers, are unneeded under VHE as the kernel is in EL2 so can manage these directly.
Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D46076
show more ...
|
a745cdc1 | 19-Aug-2024 |
Andrew Turner <andrew@FreeBSD.org> |
arm64/vmm: Teach the vtimer about VHE
Teach the virtual timer about the cnthctl_el2 field layout under VHE. As with non-VHE we need to trap the physical timer and not trap the virtual timer.
Sponso
arm64/vmm: Teach the vtimer about VHE
Teach the virtual timer about the cnthctl_el2 field layout under VHE. As with non-VHE we need to trap the physical timer and not trap the virtual timer.
Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D46074
show more ...
|
4b6c9f84 | 19-Aug-2024 |
Andrew Turner <andrew@FreeBSD.org> |
arm64/vmm: Move nVHE-only code to the new file
There are some functions that are only needed in non-VHE mode. These are used to handle hypervisor calls from the kernel, and to manage the page tables
arm64/vmm: Move nVHE-only code to the new file
There are some functions that are only needed in non-VHE mode. These are used to handle hypervisor calls from the kernel, and to manage the page tables in EL2. As these won't be used by the VHE code we can move them to the non-VHE specific files.
Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D46073
show more ...
|
d730cdea | 14-Jun-2024 |
Mark Johnston <markj@FreeBSD.org> |
arm64/vmm: Avoid unnecessary indirection in vmmops_modinit()
Most of vmm.h is machine-independent. Simplify merging amd64 and arm64 vmm code by removing this machine-dependent routine from arm64's
arm64/vmm: Avoid unnecessary indirection in vmmops_modinit()
Most of vmm.h is machine-independent. Simplify merging amd64 and arm64 vmm code by removing this machine-dependent routine from arm64's vmm.h. No functional change intended.
Reviewed by: andrew Differential Revision: https://reviews.freebsd.org/D45557
show more ...
|