Kernel/aarch64: Store and initialize TTBR0_EL1 in ThreadRegisters

This commit is contained in:
Timon Kruiper 2023-01-24 19:29:29 +01:00 committed by Andreas Kling
parent 9e90932bfb
commit 1f30a5e4d9

View file

@ -15,15 +15,17 @@ struct ThreadRegisters {
u64 x[31];
u64 elr_el1;
u64 sp_el0;
u64 ttbr0_el1;
FlatPtr ip() const { return elr_el1; }
void set_ip(FlatPtr value) { elr_el1 = value; }
void set_sp(FlatPtr value) { sp_el0 = value; }
void set_initial_state(bool, Memory::AddressSpace&, FlatPtr kernel_stack_top)
void set_initial_state(bool, Memory::AddressSpace& space, FlatPtr kernel_stack_top)
{
set_sp(kernel_stack_top);
ttbr0_el1 = space.page_directory().ttbr0();
}
void set_entry_function(FlatPtr entry_ip, FlatPtr entry_data)