Patrick Rudolph has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
cpu/qemu-x86/car: Move long mode entry right before c entry
Change-Id: I45e56ed8db9a44c00cd61e962bb82f27926eb23f Signed-off-by: Patrick Rudolph siro@das-labor.org --- M src/arch/x86/bootblock_crt0.S M src/cpu/qemu-x86/cache_as_ram_bootblock.S 2 files changed, 3 insertions(+), 6 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/70/37370/1
diff --git a/src/arch/x86/bootblock_crt0.S b/src/arch/x86/bootblock_crt0.S index 3256731..e167a12 100644 --- a/src/arch/x86/bootblock_crt0.S +++ b/src/arch/x86/bootblock_crt0.S @@ -30,12 +30,6 @@ #include <cpu/x86/16bit/reset16.inc> #include <cpu/x86/32bit/entry32.inc>
- /* BIST result in eax */ - mov %eax, %ebx - /* entry64.inc preserves ebx. */ -#include <cpu/x86/64bit/entry64.inc> - mov %ebx, %eax - #if CONFIG(BOOTBLOCK_DEBUG_SPINLOOP)
/* Wait for a JTAG debugger to break in and set EBX non-zero */ diff --git a/src/cpu/qemu-x86/cache_as_ram_bootblock.S b/src/cpu/qemu-x86/cache_as_ram_bootblock.S index 1fa0018..f7280bf 100644 --- a/src/cpu/qemu-x86/cache_as_ram_bootblock.S +++ b/src/cpu/qemu-x86/cache_as_ram_bootblock.S @@ -39,6 +39,9 @@ /* Align the stack and keep aligned for call to bootblock_c_entry() */ and $0xfffffff0, %esp
+ /* entry64.inc preserves ebx. */ +#include <cpu/x86/64bit/entry64.inc> + /* Restore the BIST result and timestamps. */ #if defined(__x86_64__) movd %mm1, %rdi
Hello build bot (Jenkins), Patrick Rudolph,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/37370
to look at the new patch set (#6).
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
cpu/qemu-x86/car: Move long mode entry right before c entry
Change-Id: I45e56ed8db9a44c00cd61e962bb82f27926eb23f Signed-off-by: Patrick Rudolph siro@das-labor.org --- M src/arch/x86/bootblock_crt0.S M src/cpu/qemu-x86/cache_as_ram_bootblock.S 2 files changed, 3 insertions(+), 6 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/70/37370/6
Patrick Rudolph has uploaded a new patch set (#7) to the change originally created by Patrick Rudolph. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
cpu/qemu-x86/car: Move long mode entry right before c entry
This fixes non emulation platforms as those are using 32bit code after the bootblock_crt0 entry which isn't converted yet to support long mode.
This is a noop for qemu and x86_32 platforms.
Change-Id: I45e56ed8db9a44c00cd61e962bb82f27926eb23f Signed-off-by: Patrick Rudolph siro@das-labor.org --- M src/arch/x86/bootblock_crt0.S M src/cpu/qemu-x86/cache_as_ram_bootblock.S 2 files changed, 3 insertions(+), 6 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/70/37370/7
Arthur Heymans has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
Patch Set 9: Code-Review+2
Angel Pons has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
Patch Set 9: Code-Review+2
(2 comments)
https://review.coreboot.org/c/coreboot/+/37370/9//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/37370/9//COMMIT_MSG@9 PS9, Line 9: non emulation nit: non-emulation
https://review.coreboot.org/c/coreboot/+/37370/9//COMMIT_MSG@10 PS9, Line 10: converted yet nit: yet converted
Patrick Rudolph has uploaded a new patch set (#10) to the change originally created by Patrick Rudolph. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
cpu/qemu-x86/car: Move long mode entry right before c entry
This fixes non emulation platforms as those are using 32bit code after the bootblock_crt0 entry, like setting up CAR and updating microcode, which isn't converted yet to support long mode.
This is a noop for the only supported x86_64 platform and all x86_32 platforms.
Change-Id: I45e56ed8db9a44c00cd61e962bb82f27926eb23f Signed-off-by: Patrick Rudolph siro@das-labor.org --- M src/arch/x86/bootblock_crt0.S M src/cpu/qemu-x86/cache_as_ram_bootblock.S 2 files changed, 3 insertions(+), 6 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/70/37370/10
Patrick Rudolph has uploaded a new patch set (#11) to the change originally created by Patrick Rudolph. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
cpu/qemu-x86/car: Move long mode entry right before c entry
This fixes non-emulation platforms as those are using 32bit code after the bootblock_crt0 entry, like setting up CAR and updating microcode, which isn't yet converted to support long mode.
This is a noop for the only supported x86_64 platform and all x86_32 platforms.
Change-Id: I45e56ed8db9a44c00cd61e962bb82f27926eb23f Signed-off-by: Patrick Rudolph siro@das-labor.org --- M src/arch/x86/bootblock_crt0.S M src/cpu/qemu-x86/cache_as_ram_bootblock.S 2 files changed, 3 insertions(+), 6 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/70/37370/11
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
Patch Set 11:
(2 comments)
https://review.coreboot.org/c/coreboot/+/37370/9//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/37370/9//COMMIT_MSG@9 PS9, Line 9: non emulation
nit: non-emulation
Done
https://review.coreboot.org/c/coreboot/+/37370/9//COMMIT_MSG@10 PS9, Line 10: converted yet
nit: yet converted
Done
Angel Pons has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
Patch Set 11: Code-Review+2
Patrick Rudolph has submitted this change. ( https://review.coreboot.org/c/coreboot/+/37370 )
Change subject: cpu/qemu-x86/car: Move long mode entry right before c entry ......................................................................
cpu/qemu-x86/car: Move long mode entry right before c entry
This fixes non-emulation platforms as those are using 32bit code after the bootblock_crt0 entry, like setting up CAR and updating microcode, which isn't yet converted to support long mode.
This is a noop for the only supported x86_64 platform and all x86_32 platforms.
Change-Id: I45e56ed8db9a44c00cd61e962bb82f27926eb23f Signed-off-by: Patrick Rudolph siro@das-labor.org Reviewed-on: https://review.coreboot.org/c/coreboot/+/37370 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Angel Pons th3fanbus@gmail.com --- M src/arch/x86/bootblock_crt0.S M src/cpu/qemu-x86/cache_as_ram_bootblock.S 2 files changed, 3 insertions(+), 6 deletions(-)
Approvals: build bot (Jenkins): Verified Angel Pons: Looks good to me, approved
diff --git a/src/arch/x86/bootblock_crt0.S b/src/arch/x86/bootblock_crt0.S index 9f45413..3f41464 100644 --- a/src/arch/x86/bootblock_crt0.S +++ b/src/arch/x86/bootblock_crt0.S @@ -20,12 +20,6 @@ #include <cpu/x86/16bit/reset16.inc> #include <cpu/x86/32bit/entry32.inc>
- /* BIST result in eax */ - mov %eax, %ebx - /* entry64.inc preserves ebx. */ -#include <cpu/x86/64bit/entry64.inc> - mov %ebx, %eax - #if CONFIG(BOOTBLOCK_DEBUG_SPINLOOP)
/* Wait for a JTAG debugger to break in and set EBX non-zero */ diff --git a/src/cpu/qemu-x86/cache_as_ram_bootblock.S b/src/cpu/qemu-x86/cache_as_ram_bootblock.S index 415ed24..148948b 100644 --- a/src/cpu/qemu-x86/cache_as_ram_bootblock.S +++ b/src/cpu/qemu-x86/cache_as_ram_bootblock.S @@ -27,6 +27,9 @@ /* Align the stack and keep aligned for call to bootblock_c_entry() */ and $0xfffffff0, %esp
+ /* entry64.inc preserves ebx. */ +#include <cpu/x86/64bit/entry64.inc> + /* Restore the BIST result and timestamps. */ #if defined(__x86_64__) movd %mm2, %rdi