操作riscv底层结构的一系列函数和数据结构
More...
Go to the source code of this file.
操作riscv底层结构的一系列函数和数据结构
- Date
- 23.04.25
- Author
- xin
- Version
- 0.1 @status Stable
◆ MAKE_SATP
◆ MAKE_SV48
◆ MAXVA
#define MAXVA (1L << (9 + 9 + 9 + 12 - 1)) |
◆ MAXVA_48
#define MAXVA_48 (1L << (9 + 9 + 9 + 9 + 12 - 1)) |
◆ MIE_MEIE
#define MIE_MEIE (1L << 11) |
◆ MIE_MSIE
#define MIE_MSIE (1L << 3) |
◆ MIE_MTIE
#define MIE_MTIE (1L << 7) |
◆ MSTATUS_MIE
#define MSTATUS_MIE (1L << 3) |
◆ MSTATUS_MPIE
#define MSTATUS_MPIE (1L << 7) |
◆ MSTATUS_MPP_M
#define MSTATUS_MPP_M (3L << 11) |
◆ MSTATUS_MPP_MASK
#define MSTATUS_MPP_MASK (3L << 11) |
◆ MSTATUS_MPP_S
#define MSTATUS_MPP_S (1L << 11) |
◆ MSTATUS_MPP_U
#define MSTATUS_MPP_U (0L << 11) |
◆ MSTATUS_SIE
#define MSTATUS_SIE (1L << 1) |
◆ MSTATUS_SPIE
#define MSTATUS_SPIE (1L << 5) |
◆ PA2PTE
#define PA2PTE |
( |
|
pa | ) |
((((uint64)(pa)) >> 12) << 10) |
◆ PGROUNDDOWN
#define PGROUNDDOWN |
( |
|
a | ) |
( (a) & ~(PGSIZE-1) ) |
◆ PGROUNDUP
#define PGROUNDUP |
( |
|
sz | ) |
( ((sz) + PGSIZE - 1) & ~(PGSIZE-1) ) |
◆ PGSHIFT
◆ PGSIZE
◆ PTE2PA
#define PTE2PA |
( |
|
pte | ) |
(((pte) >> 10) << 12) |
◆ PTE_FLAGS
#define PTE_FLAGS |
( |
|
pte | ) |
((pte) & 0x3FF) |
◆ PTE_R
◆ PTE_U
◆ PTE_V
◆ PTE_W
◆ PTE_X
◆ PX
◆ PXMASK
◆ PXSHIFT
#define PXSHIFT |
( |
|
level | ) |
( PGSHIFT + (9*(level)) ) |
◆ SATP_MASK
#define SATP_MASK (0xF << 60) |
◆ SATP_SV39
#define SATP_SV39 (8L << 60) |
◆ SATP_SV48
#define SATP_SV48 (9L << 60) |
◆ SIE_SEIE
#define SIE_SEIE (1L << 9) |
◆ SIE_SSIE
#define SIE_SSIE (1L << 1) |
◆ SIE_STIE
#define SIE_STIE (1L << 5) |
◆ SSTATUS_SIE
#define SSTATUS_SIE (1L << 1) |
◆ SSTATUS_SPIE
#define SSTATUS_SPIE (1L << 5) |
◆ SSTATUS_SPP
#define SSTATUS_SPP (1L << 8) |
◆ SSTATUS_UIE
#define SSTATUS_UIE (1L << 0) |
◆ SSTATUS_UPIE
#define SSTATUS_UPIE (1L << 4) |
◆ pagetable_t
◆ pte_t