mirror of
https://github.com/pound-emu/pound.git
synced 2025-12-13 04:36:57 +00:00
arm64/mem: Add initial software page table walker
Introduce a software-based page table walker for the arm64 MMU emulation. This is foundational component for handling GVA-GPA translations when a request missses the (future) software TLB. For now, it handles only Page descriptors and does not yet support Block descriptors or permission checks. These will be added in subsequent patches. Signed-off-by: Ronald Caesar <github43132@proton.me>
This commit is contained in:
parent
b54b3d97cd
commit
13b2e741b9
6 changed files with 429 additions and 8 deletions
|
|
@ -42,7 +42,6 @@ void take_synchronous_exception(vcpu_state_t* vcpu, uint8_t exception_class, uin
|
|||
* to 0b0101 for EL1h (using SP_EL1). (page 913 in manual) */
|
||||
const uint32_t PSTATE_EL_MASK = 0b1111;
|
||||
vcpu->pstate &= ~PSTATE_EL_MASK;
|
||||
const uint32_t PSTATE_EL1H = 0b0101;
|
||||
vcpu->pstate |= PSTATE_EL1H;
|
||||
|
||||
/* TODO(GloriousTacoo:arm): DO NOT IMPLEMENT UNTIL THE INSTRUCTION
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue