aboutsummaryrefslogtreecommitdiff
path: root/src/machine
diff options
context:
space:
mode:
authorTianhao Wang <shrik3@mailbox.org>2024-05-29 19:53:52 +0200
committerTianhao Wang <shrik3@mailbox.org>2024-06-11 15:17:11 +0200
commitcd658673a35df8b0da3551e819e26d35c18b89f2 (patch)
tree74c209b519290eb43545e800b88ddf9dfa796a7a /src/machine
parent9cf85e88211512b0410f9bb9f2f19ea4ce9a8190 (diff)
mm: add stack based PMA
use 8MiB reserved array to manage up to 4GiB of physical memory (4K Pages only) Signed-off-by: Tianhao Wang <shrik3@mailbox.org>
Diffstat (limited to 'src/machine')
-rw-r--r--src/machine/multiboot.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/machine/multiboot.rs b/src/machine/multiboot.rs
index a8fa4f0..303ed17 100644
--- a/src/machine/multiboot.rs
+++ b/src/machine/multiboot.rs
@@ -1,3 +1,4 @@
+use crate::defs::Range;
use crate::io::*;
use core::fmt;
use core::mem::size_of;
@@ -57,6 +58,15 @@ impl MultibootMmap {
pub const MTYPE_RAM_NVS: u32 = 4;
/// defective RAM
pub const MTYPE_RAM_DEFECT: u32 = 5;
+ pub fn get_range(&self) -> Range {
+ return Range {
+ addr: self.addr,
+ len: self.len,
+ };
+ }
+ pub fn get_end(&self) -> u64 {
+ return self.addr + self.len;
+ }
}
#[repr(C)]