arm64: Add CurrentEL register definitions

Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D43971

(cherry picked from commit 5e7941b6c979a55dc67baf316db6932c09b14022)
This commit is contained in:
Andrew Turner 2024-02-19 14:57:34 +00:00
parent 98768d6870
commit 9f575dadfe

View file

@ -190,6 +190,14 @@
#define CTR_ILINE_VAL(reg) ((reg) & CTR_ILINE_MASK)
#define CTR_ILINE_SIZE(reg) (4 << (CTR_ILINE_VAL(reg) >> CTR_ILINE_SHIFT))
/* CurrentEL - Current Exception Level */
#define CURRENTEL_EL_SHIFT 2
#define CURRENTEL_EL_MASK (0x3 << CURRENTEL_EL_SHIFT)
#define CURRENTEL_EL_EL0 (0x0 << CURRENTEL_EL_SHIFT)
#define CURRENTEL_EL_EL1 (0x1 << CURRENTEL_EL_SHIFT)
#define CURRENTEL_EL_EL2 (0x2 << CURRENTEL_EL_SHIFT)
#define CURRENTEL_EL_EL3 (0x3 << CURRENTEL_EL_SHIFT)
/* DAIFSet/DAIFClear */
#define DAIF_D (1 << 3)
#define DAIF_A (1 << 2)