os/arch/riscv/
constant.rs1#![allow(unused)]
3
4pub const ARCH: &str = "riscv64";
6
7pub const SSTATUS_SIE: usize = 1 << 1;
9pub const SSTATUS_SPIE: usize = 1 << 5;
11pub const SSTATUS_SPP: usize = 1 << 8;
13
14pub const SV39_TOP_HALF_TOP: usize = 0xffff_ffff_ffff_ffff;
19pub const SV39_TOP_HALF_BASE: usize = 0xffff_ffc0_0000_0000;
20pub const SV39_BOT_HALF_TOP: usize = 0x0000_003f_ffff_ffff;
21pub const SV39_BOT_HALF_BASE: usize = 0x0000_0000_0000_0000;
22
23pub const STACK_ALIGN_MASK: usize = 0xF;
25
26pub const USER_BASE: usize = 0x0000_0000_0000_0000;
28pub const USER_TOP: usize = 0x0000_003f_ffff_ffff;
29
30pub const IRQ_MIN: usize = usize::MAX / 2;
31pub const IRQ_MAX: usize = usize::MAX;
32
33pub const TIMER: usize = usize::MAX / 2 + 1 + 5;
34pub const SUPERVISOR_EXTERNAL: usize = usize::MAX / 2 + 1 + 8;