refactor(adapter): split trap/page_table/smp/entry by concern; trim comments
This commit is contained in:
@@ -7,10 +7,8 @@ pub use page_table::{
|
||||
create_user_root, init_kernel_page_table, map_user_page, translate_user, unmap_user_page,
|
||||
};
|
||||
|
||||
/// The kernel lives in the upper half of the address space: all of RAM and
|
||||
/// the MMIO windows appear at their physical address plus this offset (the
|
||||
/// start of Sv39's upper half), and the kernel image is linked there too,
|
||||
/// so one offset converts any kernel address. Must match linker.ld.
|
||||
/// Direct-map offset: RAM, MMIO and the kernel image sit at physical + this
|
||||
/// (start of Sv39's upper half). Must match linker.ld.
|
||||
pub const PHYS_OFFSET: usize = 0xFFFF_FFC0_0000_0000;
|
||||
|
||||
/// Where the kernel sees physical address `pa`.
|
||||
@@ -18,8 +16,7 @@ pub const fn phys_to_virt(pa: usize) -> usize {
|
||||
pa + PHYS_OFFSET
|
||||
}
|
||||
|
||||
/// The physical address behind kernel address `va` (a static, the boot
|
||||
/// heap, a page table). Only valid for addresses in the direct map.
|
||||
/// The physical address behind a direct-map kernel address `va`.
|
||||
pub const fn virt_to_phys(va: usize) -> usize {
|
||||
va - PHYS_OFFSET
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user