aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Turner <andrew@FreeBSD.org>2025-10-02 15:35:11 +0000
committerAndrew Turner <andrew@FreeBSD.org>2025-10-02 16:21:33 +0000
commitc67ea2707d2b5e6deb5986710f520ff69e4f78a3 (patch)
treeb3d7967afef05949042fba0022c47a447af894e3
parent4aa762f3cb97402f0345ce5112c47a303dd4107d (diff)
arm64/vmm: Add missing debug traps
These are features we don't support or advertise to the guest so can safely be trapped. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D52806
-rw-r--r--sys/arm64/vmm/vmm_reset.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/arm64/vmm/vmm_reset.c b/sys/arm64/vmm/vmm_reset.c
index c4102277131d..1240c3ed16ec 100644
--- a/sys/arm64/vmm/vmm_reset.c
+++ b/sys/arm64/vmm/vmm_reset.c
@@ -145,7 +145,8 @@ reset_vm_el2_regs(void *vcpu)
/* Set the Extended Hypervisor Configuration Register */
el2ctx->hcrx_el2 = 0;
/* TODO: Trap all extensions we don't support */
- el2ctx->mdcr_el2 = 0;
+ el2ctx->mdcr_el2 = MDCR_EL2_TDOSA | MDCR_EL2_TDRA | MDCR_EL2_TPMS |
+ MDCR_EL2_TTRF;
/* PMCR_EL0.N is read from MDCR_EL2.HPMN */
el2ctx->mdcr_el2 |= (el2ctx->pmcr_el0 & PMCR_N_MASK) >> PMCR_N_SHIFT;