diff options
author | Mark Johnston <markj@FreeBSD.org> | 2023-12-01 18:28:58 +0000 |
---|---|---|
committer | Mark Johnston <markj@FreeBSD.org> | 2023-12-08 14:23:52 +0000 |
commit | 4161f141aa798a90da77daacf7c5425a2b99f9b8 (patch) | |
tree | 7f4919aba7f883899f4ff76262a39e1e33594f1b | |
parent | 44600eb7e231b0cc6c36d10031d983051cd683ee (diff) | |
download | src-4161f141aa798a90da77daacf7c5425a2b99f9b8.tar.gz src-4161f141aa798a90da77daacf7c5425a2b99f9b8.zip |
arm64: Add register definitions for MDCR_EL2
This is needed to support the bhyve gdb stub implementation on arm64.
Reviewed by: andrew
MFC after: 1 week
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D42867
(cherry picked from commit 4f12883c360dbb03562f11713e711e3a3a330a0f)
-rw-r--r-- | sys/arm64/include/hypervisor.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/sys/arm64/include/hypervisor.h b/sys/arm64/include/hypervisor.h index 109169601c83..589d6e9cbdbe 100644 --- a/sys/arm64/include/hypervisor.h +++ b/sys/arm64/include/hypervisor.h @@ -232,4 +232,22 @@ /* Assumed to be 0 by locore.S */ #define VTTBR_HOST 0x0000000000000000 +/* MDCR_EL2 - Hyp Debug Control Register */ +#define MDCR_EL2_HPMN_MASK 0x1f +#define MDCR_EL2_HPMN_SHIFT 0 +#define MDCR_EL2_TPMCR_SHIFT 5 +#define MDCR_EL2_TPMCR (0x1UL << MDCR_EL2_TPMCR_SHIFT) +#define MDCR_EL2_TPM_SHIFT 6 +#define MDCR_EL2_TPM (0x1UL << MDCR_EL2_TPM_SHIFT) +#define MDCR_EL2_HPME_SHIFT 7 +#define MDCR_EL2_HPME (0x1UL << MDCR_EL2_HPME_SHIFT) +#define MDCR_EL2_TDE_SHIFT 8 +#define MDCR_EL2_TDE (0x1UL << MDCR_EL2_TDE_SHIFT) +#define MDCR_EL2_TDA_SHIFT 9 +#define MDCR_EL2_TDA (0x1UL << MDCR_EL2_TDA_SHIFT) +#define MDCR_EL2_TDOSA_SHIFT 10 +#define MDCR_EL2_TDOSA (0x1UL << MDCR_EL2_TDOSA_SHIFT) +#define MDCR_EL2_TDRA_SHIFT 11 +#define MDCR_EL2_TDRA (0x1UL << MDCR_EL2_TDRA_SHIFT) + #endif /* !_MACHINE_HYPERVISOR_H_ */ |