summaryrefslogtreecommitdiff
path: root/crates/kernel/src/arch/riscv64/mod.rs
blob: 15f44c7ef91f58ddf0e324f513047d1175a4c1c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
pub mod interrupts;
pub mod paging;

/// The number of bits in the size of a regular-sized page of memory.
pub const PAGE_SIZE_BITS: usize = 12;

/// The number of bits in the size of the largest huge page.
pub const MAX_PAGE_SIZE_BITS: usize = 30;

/// Halts the hart.
pub fn sleep_forever() -> ! {
    loop {
        unsafe { core::arch::asm!("wfi") }
    }
}