Attention is currently required from: Jérémy Compostella.
Benjamin Doron has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/79863?usp=email )
Change subject: [DNM] cpu/x86/64bit/mode_switch2.S: Support runtime page tables ......................................................................
[DNM] cpu/x86/64bit/mode_switch2.S: Support runtime page tables
Try to get page table address from the `page_tables` variable in mmu.c. Fallback to hardcoded page tables in ROM.
Untested.
Change-Id: Ic964038fd4dd810015e6a355a171e49db648c8fe Signed-off-by: Benjamin Doron benjamin.doron@9elements.com --- M src/cpu/x86/64bit/mode_switch2.S 1 file changed, 4 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/63/79863/1
diff --git a/src/cpu/x86/64bit/mode_switch2.S b/src/cpu/x86/64bit/mode_switch2.S index cbd98a0..7376275 100644 --- a/src/cpu/x86/64bit/mode_switch2.S +++ b/src/cpu/x86/64bit/mode_switch2.S @@ -19,8 +19,12 @@ mov %esp, %ebp
/* Get page table address */ + movl page_tables, %eax + cmp %eax, 0 + jne 1f movl $(CONFIG_ARCH_X86_64_PGTBL_LOC), %eax
+1: /* Enter long mode, preserves ebx */ #include <cpu/x86/64bit/entry64.inc>