Use functions rather than macros for internal helpers.
Change-Id: I1b0f02b40cae6b00cad21b76146b707cf87f4ee6
diff --git a/src/arch/aarch64/inc/hf/arch/mm.h b/src/arch/aarch64/inc/hf/arch/mm.h
index 980f386..fd50f67 100644
--- a/src/arch/aarch64/inc/hf/arch/mm.h
+++ b/src/arch/aarch64/inc/hf/arch/mm.h
@@ -10,15 +10,9 @@
#define PAGE_LEVEL_BITS 9
-#define HF_ARCH_AARCH64_MM_PTE_ATTR_MASK \
+#define ARCH_AARCH64_MM_PTE_ATTR_MASK \
(((UINT64_C(1) << PAGE_BITS) - 1) | ~((UINT64_C(1) << 48) - 1))
-#define HF_ARCH_AARCH64_MM_GET_PTE_ATTRS(v) \
- ((v)&HF_ARCH_AARCH64_MM_PTE_ATTR_MASK)
-
-#define HF_ARCH_AARCH64_MM_CLEAR_PTE_ATTRS(v) \
- ((v) & ~HF_ARCH_AARCH64_MM_PTE_ATTR_MASK)
-
/**
* Returns the encoding of a page table entry that isn't present.
*/
@@ -90,13 +84,18 @@
(pte & 0x3) == (level == 0 ? 0x3 : 0x1);
}
+static inline uint64_t arch_aarch64_mm_clear_pte_attrs(pte_t pte)
+{
+ return pte & ~ARCH_AARCH64_MM_PTE_ATTR_MASK;
+}
+
/**
* Clears the given physical address, i.e., sets the ignored bits (from a page
* table perspective) to zero.
*/
static inline paddr_t arch_mm_clear_pa(paddr_t pa)
{
- return pa_init(HF_ARCH_AARCH64_MM_CLEAR_PTE_ATTRS(pa_addr(pa)));
+ return pa_init(arch_aarch64_mm_clear_pte_attrs(pa_addr(pa)));
}
/**
@@ -105,7 +104,7 @@
*/
static inline paddr_t arch_mm_block_from_pte(pte_t pte)
{
- return pa_init(HF_ARCH_AARCH64_MM_CLEAR_PTE_ATTRS(pte));
+ return pa_init(arch_aarch64_mm_clear_pte_attrs(pte));
}
/**
@@ -114,7 +113,7 @@
*/
static inline paddr_t arch_mm_table_from_pte(pte_t pte)
{
- return pa_init(HF_ARCH_AARCH64_MM_CLEAR_PTE_ATTRS(pte));
+ return pa_init(arch_aarch64_mm_clear_pte_attrs(pte));
}
/**
@@ -123,7 +122,7 @@
*/
static inline uint64_t arch_mm_pte_attrs(pte_t pte)
{
- return HF_ARCH_AARCH64_MM_GET_PTE_ATTRS(pte);
+ return pte & ARCH_AARCH64_MM_PTE_ATTR_MASK;
}
/**