[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [PATCH v2 33/47] arm64: add the virtual address layout description



This patch describes the virtual address layout for 48bit arm64:
  memory area (0xffff000000000000 ~ VIRT_KERNEL_AREA)   : used for linear 
physical memory mapping
  kernel area (VIRT_KERNEL_AREA   ~ VIRT_DEMAND_AREA)   : used for 
map_frame_virt
  demand area (VIRT_DEMAND_AREA   ~ VIRT_HEAP_AREA)     : used for ioremap
  heap area   (VIRT_HEAP_AREA     ~ 0xffffffffffffffff) : used for heap

Signed-off-by: Huang Shijie <shijie.huang@xxxxxxx>
---
 include/arm/arch_mm.h | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/include/arm/arch_mm.h b/include/arm/arch_mm.h
index e1aed26..0765ba2 100644
--- a/include/arm/arch_mm.h
+++ b/include/arm/arch_mm.h
@@ -14,6 +14,25 @@ typedef uint64_t paddr_t;
 #define VIRT_KERNEL_AREA        ((unsigned long)to_virt(MAX_MEM_SIZE))
 #define VIRT_DEMAND_AREA        (VIRT_KERNEL_AREA + MAX_MEM_SIZE)
 #define VIRT_HEAP_AREA          (VIRT_DEMAND_AREA + MAX_MEM_SIZE)
+
+/*
+ * The virtual address layout for arm64(48bit):
+ *
+ *      
--------------------------------------------------------------------------
+ *     |                                                                       
   |
+ *      
--------------------------------------------------------------------------
+ *     ^                   ^                   ^                 ^             
   ^
+ *     |<-- memory area -->|<-- kernel area -->|<- demand area ->|<- heap area 
-> |
+ *     ^
+ *     ^
+ *     |
+ * (0xffff000000000000, when TCR.T0SZ == 16)
+ *
+ * memory area (0xffff000000000000 ~ VIRT_KERNEL_AREA)   : used for linear 
physical memory mapping
+ * kernel area (VIRT_KERNEL_AREA   ~ VIRT_DEMAND_AREA)   : used for 
map_frame_virt
+ * demand area (VIRT_DEMAND_AREA   ~ VIRT_HEAP_AREA)     : used for ioremap
+ * heap area   (VIRT_HEAP_AREA     ~ 0xffffffffffffffff) : used for heap
+ */
 #endif
 
 typedef uint64_t lpae_t;
-- 
2.7.4


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.