summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/sbi/sbi_domain.h34
1 files changed, 15 insertions, 19 deletions
diff --git a/include/sbi/sbi_domain.h b/include/sbi/sbi_domain.h
index e10daff9..c88dbac6 100644
--- a/include/sbi/sbi_domain.h
+++ b/include/sbi/sbi_domain.h
@@ -74,33 +74,29 @@ struct sbi_domain_memregion {
SBI_DOMAIN_MEMREGION_SU_READABLE)
/* Shared read-only region between M and SU mode */
-#define SBI_DOMAIN_MEMREGION_IS_SUR_MR(__flags) \
- ((__flags & SBI_DOMAIN_MEMREGION_M_READABLE) && \
- (__flags & SBI_DOMAIN_MEMREGION_SU_READABLE))
+#define SBI_DOMAIN_MEMREGION_IS_SUR_MR(__flags) \
+ ((__flags & SBI_DOMAIN_MEMREGION_ACCESS_MASK) == \
+ SBI_DOMAIN_MEMREGION_SHARED_RDONLY)
/* Shared region: SU execute-only and M read/execute */
-#define SBI_DOMAIN_MEMREGION_IS_SUX_MRX(__flags) \
- ((__flags & SBI_DOMAIN_MEMREGION_M_READABLE) && \
- (__flags & SBI_DOMAIN_MEMREGION_M_EXECUTABLE) && \
- (__flags & SBI_DOMAIN_MEMREGION_SU_EXECUTABLE))
+#define SBI_DOMAIN_MEMREGION_IS_SUX_MRX(__flags) \
+ ((__flags & SBI_DOMAIN_MEMREGION_ACCESS_MASK) == \
+ SBI_DOMAIN_MEMREGION_SHARED_SUX_MRX)
/* Shared region: SU and M execute-only */
-#define SBI_DOMAIN_MEMREGION_IS_SUX_MX(__flags) \
- ((__flags & SBI_DOMAIN_MEMREGION_M_EXECUTABLE) && \
- (__flags & SBI_DOMAIN_MEMREGION_SU_EXECUTABLE))
+#define SBI_DOMAIN_MEMREGION_IS_SUX_MX(__flags) \
+ ((__flags & SBI_DOMAIN_MEMREGION_ACCESS_MASK) == \
+ SBI_DOMAIN_MEMREGION_SHARED_SUX_MX)
/* Shared region: SU and M read/write */
-#define SBI_DOMAIN_MEMREGION_IS_SURW_MRW(__flags) \
- ((__flags & SBI_DOMAIN_MEMREGION_M_READABLE) && \
- (__flags & SBI_DOMAIN_MEMREGION_M_WRITABLE) && \
- (__flags & SBI_DOMAIN_MEMREGION_SU_READABLE) & \
- (__flags & SBI_DOMAIN_MEMREGION_SU_WRITABLE))
+#define SBI_DOMAIN_MEMREGION_IS_SURW_MRW(__flags) \
+ ((__flags & SBI_DOMAIN_MEMREGION_ACCESS_MASK) == \
+ SBI_DOMAIN_MEMREGION_SHARED_SURW_MRW)
/* Shared region: SU read-only and M read/write */
-#define SBI_DOMAIN_MEMREGION_IS_SUR_MRW(__flags) \
- ((__flags & SBI_DOMAIN_MEMREGION_M_READABLE) && \
- (__flags & SBI_DOMAIN_MEMREGION_M_WRITABLE) && \
- (__flags & SBI_DOMAIN_MEMREGION_SU_READABLE))
+#define SBI_DOMAIN_MEMREGION_IS_SUR_MRW(__flags) \
+ ((__flags & SBI_DOMAIN_MEMREGION_ACCESS_MASK) == \
+ SBI_DOMAIN_MEMREGION_SHARED_SUR_MRW)
/*
* Check if region flags match with any of the above