2024-11-02 11:31:51 +00:00
|
|
|
#ifndef MANGO_X86_64_VM_H_
|
|
|
|
|
#define MANGO_X86_64_VM_H_
|
2023-02-05 10:28:07 +00:00
|
|
|
|
2023-02-07 15:38:18 +00:00
|
|
|
/* kernel higher-half base virtual address. */
|
2023-02-05 10:28:07 +00:00
|
|
|
#define VM_KERNEL_VOFFSET 0xFFFFFFFF80000000
|
|
|
|
|
|
2023-02-07 15:38:18 +00:00
|
|
|
/* direct page-mapping region.
|
|
|
|
|
NOTE that these are the maximum bounds of this region.
|
|
|
|
|
the actual size depends on the amount of physical
|
|
|
|
|
memory present. */
|
|
|
|
|
#define VM_PAGEMAP_BASE 0xFFFF888000000000
|
|
|
|
|
#define VM_PAGEMAP_LIMIT 0xFFFFC87FFFFFFFFF
|
|
|
|
|
|
2026-02-08 11:27:37 +00:00
|
|
|
#define VM_PAGE_SIZE 0x1000
|
|
|
|
|
#define VM_PAGE_MASK (VM_PAGE_SIZE - 1)
|
|
|
|
|
#define VM_PAGE_SHIFT 12
|
2023-02-05 10:28:07 +00:00
|
|
|
|
|
|
|
|
#define VM_PAGE_MIN_ORDER VM_PAGE_4K
|
|
|
|
|
#define VM_PAGE_MAX_ORDER VM_PAGE_8M
|
|
|
|
|
|
2026-02-08 11:27:37 +00:00
|
|
|
#define VM_ZONE_MIN VM_ZONE_DMA
|
|
|
|
|
#define VM_ZONE_MAX VM_ZONE_NORMAL
|
|
|
|
|
|
|
|
|
|
#define VM_USER_BASE 0x0000000000100000
|
|
|
|
|
#define VM_USER_LIMIT 0x00007fffffffffff
|
|
|
|
|
|
|
|
|
|
#define VM_KERNEL_BASE 0XFFFF800000000000
|
|
|
|
|
#define VM_KERNEL_LIMIT 0XFFFFFFFFFFFFFFFF
|
2023-05-07 21:38:08 +01:00
|
|
|
|
2023-02-05 10:28:07 +00:00
|
|
|
#endif
|