[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 10/25] include/exec/memattrs: Add two bits of space to MemTxAt
From: |
Richard Henderson |
Subject: |
[PATCH v3 10/25] include/exec/memattrs: Add two bits of space to MemTxAttrs |
Date: |
Tue, 21 Feb 2023 16:33:21 -1000 |
We will need 2 bits to represent ARMSecurityState.
Do not attempt to replace or widen secure, even though it
logically overlaps the new field -- there are uses within
e.g. hw/block/pflash_cfi01.c, which don't know anything
specific about ARM.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
include/exec/memattrs.h | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/include/exec/memattrs.h b/include/exec/memattrs.h
index 9fb98bc1ef..d04170aa27 100644
--- a/include/exec/memattrs.h
+++ b/include/exec/memattrs.h
@@ -29,10 +29,17 @@ typedef struct MemTxAttrs {
* "didn't specify" if necessary.
*/
unsigned int unspecified:1;
- /* ARM/AMBA: TrustZone Secure access
+ /*
+ * ARM/AMBA: TrustZone Secure access
* x86: System Management Mode access
*/
unsigned int secure:1;
+ /*
+ * ARM: ArmSecuritySpace. This partially overlaps secure, but it is
+ * easier to have both fields to assist code that does not understand
+ * ARMv9 RME, or no specific knowledge of ARM at all (e.g. pflash).
+ */
+ unsigned int space:2;
/* Memory access is usermode (unprivileged) */
unsigned int user:1;
/*
--
2.34.1
- Re: [PATCH v3 20/25] target/arm: Use get_phys_addr_with_struct for stage2, (continued)
- [PATCH v3 16/25] target/arm: Handle Block and Page bits for security space, Richard Henderson, 2023/02/21
- [PATCH v3 13/25] target/arm: Remove __attribute__((nonnull)) from ptw.c, Richard Henderson, 2023/02/21
- [PATCH v3 14/25] target/arm: Pipe ARMSecuritySpace through ptw.c, Richard Henderson, 2023/02/21
- [PATCH v3 15/25] target/arm: NSTable is RES0 for the RME EL3 regime, Richard Henderson, 2023/02/21
- [PATCH v3 08/25] target/arm: Add RME cpregs, Richard Henderson, 2023/02/21
- [PATCH v3 10/25] include/exec/memattrs: Add two bits of space to MemTxAttrs,
Richard Henderson <=
- [PATCH v3 18/25] target/arm: Use get_phys_addr_with_struct in S1_ptw_translate, Richard Henderson, 2023/02/21
- [PATCH v3 17/25] target/arm: Handle no-execute for Realm and Root regimes, Richard Henderson, 2023/02/21
- [PATCH v3 22/25] target/arm: Implement GPC exceptions, Richard Henderson, 2023/02/21
- [PATCH NOTFORMERGE v3 24/25] target/arm: Enable RME for -cpu max, Richard Henderson, 2023/02/21
- [PATCH v3 21/25] target/arm: Add GPC syndrome, Richard Henderson, 2023/02/21
- [PATCH v3 23/25] target/arm: Implement the granule protection check, Richard Henderson, 2023/02/21
- [PATCH NOTFORMERGE v3 25/25] hw/arm/virt: Add some memory for Realm Management Monitor, Richard Henderson, 2023/02/21