diff options
Diffstat (limited to 'src/arch/x86/assembly_entry.S')
-rw-r--r-- | src/arch/x86/assembly_entry.S | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/arch/x86/assembly_entry.S b/src/arch/x86/assembly_entry.S index a5399b74a5..02f492cfaa 100644 --- a/src/arch/x86/assembly_entry.S +++ b/src/arch/x86/assembly_entry.S @@ -20,15 +20,18 @@ /* * This path is for stages that are post bootblock when employing - * CONFIG_C_ENVIRONMENT_BOOTBLOCK. There's no need to re-load the gdt, - * etc as all those settings are cached within the processor. In order - * to continue with C code execution one needs to set stack pointer and - * clear CAR_GLOBAL variables that are stage specific. + * CONFIG_C_ENVIRONMENT_BOOTBLOCK. The gdt is reloaded to accommodate + * platforms that are executing out of CAR. In order to continue with + * C code execution one needs to set stack pointer and clear CAR_GLOBAL + * variables that are stage specific. */ .section ".text._start", "ax", @progbits .global _start _start: + /* Migrate GDT to this text segment */ + call gdt_init + /* reset stack pointer to CAR stack */ mov $_car_stack_end, %esp |