Changeset 108923 in vbox for trunk/include
- Timestamp:
- Apr 9, 2025 6:55:17 PM (4 weeks ago)
- svn:sync-xref-src-repo-rev:
- 168427
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/armv8.h
r108920 r108923 2970 2970 #define ARMV8_VMSA64_DESC_F_TBL_OR_PG_BIT 1 2971 2971 2972 /** @name Upper Attributes for block or page descriptors. 2973 * @{ */ 2974 /** Bit 54 - Execute never (XN) when only a single privilege level is supported by the translation regime. */ 2975 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_1PRIV_XN_BIT 54 2976 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_1PRIV_XN RT_BIT_64(ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_1PRIV_XN_BIT) 2977 /** Bit 54 - Unprivileged execute never (UXN) when the translation regime supports two privilege levels. */ 2978 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_2PRIV_UXN_BIT 54 2979 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_2PRIV_UXN RT_BIT_64(ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_2PRIV_UXN_BIT) 2980 /** Bit 54 - Privileged execute never (PXN) when the EL1&0 translation regime is active and HCR_EL2.{NV,NV1} is {1, 1}. */ 2981 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_EL10_2PRIV_PXN_BIT 54 2982 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_EL10_2PRIV_PXN RT_BIT_64(ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_EL10_2PRIV_PXN_BIT) 2983 /** Bit 53 - Privileged execute neveer (PXN) when the translation regime supports two privilege levels. */ 2984 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_2PRIV_PXN_BIT 53 2985 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_2PRIV_PXN RT_BIT_64(ARMV8_VMSA64_DESC_PG_OR_BLOCK_UATTR_2PRIV_PXN_BIT) 2986 /** @} */ 2987 2988 /** @name Lower Attributes for block or page descriptors. 2989 * @{ */ 2990 /** Bit 10 - Access flag (AF). */ 2991 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AF_BIT 10 2992 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AF RT_BIT_64(ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AF_BIT) 2993 /** Bit 6 - 7 Access permissions (AP) (when indirect permissions are disables and stage1 translation supports two exception levels). */ 2994 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AP_MASK (RT_BIT_64(7) | RT_BIT_64(6)) 2995 #define ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AP_SHIFT 6 2996 /** Privileged Read and Write (PrivRead, PrivWrite). */ 2997 # define ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AP_PRIV_RW 0 2998 /** Unprivileged Read and Write (PrivRead, PrivWrite, UnprivRead, UnprivWrite). */ 2999 # define ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AP_PRIV_RW_UNPRIV_RW 1 3000 /** Privileged Read (PrivRead) */ 3001 # define ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AP_PRIV_R 2 3002 /** Privileged and Unprivileged Read (PrivRead, UnprivRead) */ 3003 # define ARMV8_VMSA64_DESC_PG_OR_BLOCK_LATTR_AP_PRIV_R_UNPRIV_R 3 3004 /** @} */ 3005 2972 3006 /** @} */ 2973 3007
Note:
See TracChangeset
for help on using the changeset viewer.