summaryrefslogtreecommitdiff
path: root/components/mm
diff options
context:
space:
mode:
authorheyuanjie87 <[email protected]>2024-07-11 11:46:26 +0800
committerGitHub <[email protected]>2024-07-11 11:46:26 +0800
commit908f8034732a3fbe485f54e7543dc1934410a990 (patch)
tree970bd82852e948817df050f18b6bf7772b313a30 /components/mm
parent6180dabab3f83c36677901631ebdc4038a99cae4 (diff)
feat: support ARCH_REMAP_KERNEL on libcpu/c906 (#9123) (#9171)riscv64
feat: [libcpu/c906] support ARCH_REMAP_KERNEL This change was necessary to enable the remapping of the kernel image to a high virtual address region on the c906 platform. Changes: - Introduced new configuration options `ARCH_REMAP_KERNEL`, and `ARCH_USING_ASID` under the `ARCH_RISCV64` section. - Updated MMU initialization and switching functions to incorporate remapping handling. - Modified page table setup for proper memory attribute settings. - Added support for early memory setup, kernel remapping - Added conditional compilation for ASID support in the `rt_aspace` struct, since this is not enable currently for most architecture. Signed-off-by: Shell <[email protected]> Co-authored-by: Shell <[email protected]>
Diffstat (limited to 'components/mm')
-rw-r--r--components/mm/mm_aspace.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/components/mm/mm_aspace.h b/components/mm/mm_aspace.h
index ff1429c305..8ce310804d 100644
--- a/components/mm/mm_aspace.h
+++ b/components/mm/mm_aspace.h
@@ -49,7 +49,11 @@ typedef struct rt_aspace
struct rt_mutex bst_lock;
struct rt_mem_obj *private_object;
+
+#ifdef ARCH_USING_ASID
rt_uint64_t asid;
+#endif /* ARCH_USING_ASID */
+
} *rt_aspace_t;
typedef struct rt_varea