aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMarco Nelissen <marcone@google.com>2022-12-15 10:21:33 -0800
committerMarco Nelissen <marcone@google.com>2022-12-17 02:49:02 +0000
commit94d3bac91604d9ff39114c98e7a5483ce501778a (patch)
tree5e17706c1b496c8bfc663ce85195aeb4b3f8553a /include
parenta467f839883f087ca5d2436a9e13f5edd2f51582 (diff)
downloadcommon-94d3bac91604d9ff39114c98e7a5483ce501778a.tar.gz
arch: arm64: support tagged memory allocations
Bug: 231155845 Test: boot, scudotest Change-Id: Ic5e70a88405cb5f4e952b283c7c4c1ae7b0dbaf2
Diffstat (limited to 'include')
-rw-r--r--include/arch/ops.h6
-rw-r--r--include/kernel/vm.h2
2 files changed, 8 insertions, 0 deletions
diff --git a/include/arch/ops.h b/include/arch/ops.h
index f0977519..7c13c218 100644
--- a/include/arch/ops.h
+++ b/include/arch/ops.h
@@ -66,6 +66,12 @@ void arch_sync_cache_range(addr_t start, size_t len);
void arch_idle(void);
+/* Zero the specified memory as well as the corresponding tags */
+void arch_clear_pages_and_tags(vaddr_t addr, size_t size);
+
+/* Return true if tagging is enabled */
+bool arch_tagging_enabled(void);
+
__END_CDECLS
#endif // !ASSEMBLY
diff --git a/include/kernel/vm.h b/include/kernel/vm.h
index 8cb3ed16..316042bd 100644
--- a/include/kernel/vm.h
+++ b/include/kernel/vm.h
@@ -176,6 +176,8 @@ static status_t pmm_add_arena_late(pmm_arena_t *arena) {
#define PMM_ALLOC_FLAG_KMAP (1U << 0)
#define PMM_ALLOC_FLAG_CONTIGUOUS (1U << 1)
#define PMM_ALLOC_FLAG_FROM_RESERVED (1U << 2)
+#define PMM_ALLOC_FLAG_NO_CLEAR (1U << 3)
+#define PMM_ALLOC_FLAG_ALLOW_TAGGED (1U << 4)
struct res_group;