Hello Michał Żygowski,
I'd like you to do a code review. Please visit
https://review.coreboot.org/c/coreboot/+/37350
to review the following change.
Change subject: AGESA,binaryPI: Remove __x86_64__ long mode in CAR ......................................................................
AGESA,binaryPI: Remove __x86_64__ long mode in CAR
Change-Id: I83a8b2325b751feeb046ce74fabd37aeb27c28dc Signed-off-by: Michał Żygowski michal.zygowski@3mdeb.com Signed-off-by: Kyösti Mälkki kyosti.malkki@gmail.com --- M src/drivers/amd/agesa/cache_as_ram.S 1 file changed, 0 insertions(+), 45 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/50/37350/1
diff --git a/src/drivers/amd/agesa/cache_as_ram.S b/src/drivers/amd/agesa/cache_as_ram.S index e429bba..4f1cbea 100644 --- a/src/drivers/amd/agesa/cache_as_ram.S +++ b/src/drivers/amd/agesa/cache_as_ram.S @@ -39,51 +39,6 @@ /* Align the stack. */ and $0xFFFFFFF0, %esp
-#ifdef __x86_64__ - /* switch to 64 bit long mode */ - mov %esi, %ecx - add $0, %ecx # core number - xor %eax, %eax - lea (0x1000+0x23)(%ecx), %edi - mov %edi, (%ecx) - mov %eax, 4(%ecx) - - lea 0x1000(%ecx), %edi - movl $0x000000e3, 0x00(%edi) - movl %eax, 0x04(%edi) - movl $0x400000e3, 0x08(%edi) - movl %eax, 0x0c(%edi) - movl $0x800000e3, 0x10(%edi) - movl %eax, 0x14(%edi) - movl $0xc00000e3, 0x18(%edi) - movl %eax, 0x1c(%edi) - - # load ROM based identity mapped page tables - mov %ecx, %eax - mov %eax, %cr3 - - # enable PAE - mov %cr4, %eax - bts $5, %eax - mov %eax, %cr4 - - # enable long mode - mov $0xC0000080, %ecx - rdmsr - bts $8, %eax - wrmsr - - # enable paging - mov %cr0, %eax - bts $31, %eax - mov %eax, %cr0 - - # use call far to switch to 64-bit code segment - ljmp $0x18, $1f -1: - -#endif - /* Must maintain 16-byte stack alignment here. */ pushl $0x0 pushl $0x0
Michał Żygowski has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37350 )
Change subject: AGESA,binaryPI: Remove __x86_64__ long mode in CAR ......................................................................
Patch Set 1: Code-Review+2
Paul Menzel has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37350 )
Change subject: AGESA,binaryPI: Remove __x86_64__ long mode in CAR ......................................................................
Patch Set 2:
(1 comment)
https://review.coreboot.org/c/coreboot/+/37350/2//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/37350/2//COMMIT_MSG@8 PS2, Line 8: Why? Wasn’t that from Scott’s x86_64 port?
Kyösti Mälkki has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37350 )
Change subject: AGESA,binaryPI: Remove __x86_64__ long mode in CAR ......................................................................
Patch Set 2:
The code removed here seemed to me like it would collide with the general approaches we might reach x86_64 one day. Patrick?
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37350 )
Change subject: AGESA,binaryPI: Remove __x86_64__ long mode in CAR ......................................................................
Patch Set 2: Code-Review+2
x86_64 support can be re-added once it works on qemu and is build tested.
Angel Pons has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37350 )
Change subject: AGESA,binaryPI: Remove __x86_64__ long mode in CAR ......................................................................
Patch Set 2: Code-Review+2
Kyösti Mälkki has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/37350 )
Change subject: AGESA,binaryPI: Remove __x86_64__ long mode in CAR ......................................................................
Patch Set 2:
(1 comment)
https://review.coreboot.org/c/coreboot/+/37350/2//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/37350/2//COMMIT_MSG@8 PS2, Line 8:
Why? Wasn’t that from Scott’s x86_64 port?
Ack
Kyösti Mälkki has submitted this change. ( https://review.coreboot.org/c/coreboot/+/37350 )
Change subject: AGESA,binaryPI: Remove __x86_64__ long mode in CAR ......................................................................
AGESA,binaryPI: Remove __x86_64__ long mode in CAR
Change-Id: I83a8b2325b751feeb046ce74fabd37aeb27c28dc Signed-off-by: Michał Żygowski michal.zygowski@3mdeb.com Signed-off-by: Kyösti Mälkki kyosti.malkki@gmail.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/37350 Reviewed-by: Patrick Rudolph siro@das-labor.org Reviewed-by: Angel Pons th3fanbus@gmail.com Tested-by: build bot (Jenkins) no-reply@coreboot.org --- M src/drivers/amd/agesa/cache_as_ram.S 1 file changed, 0 insertions(+), 45 deletions(-)
Approvals: build bot (Jenkins): Verified Patrick Rudolph: Looks good to me, approved Angel Pons: Looks good to me, approved Michał Żygowski: Looks good to me, approved
diff --git a/src/drivers/amd/agesa/cache_as_ram.S b/src/drivers/amd/agesa/cache_as_ram.S index e429bba..4f1cbea 100644 --- a/src/drivers/amd/agesa/cache_as_ram.S +++ b/src/drivers/amd/agesa/cache_as_ram.S @@ -39,51 +39,6 @@ /* Align the stack. */ and $0xFFFFFFF0, %esp
-#ifdef __x86_64__ - /* switch to 64 bit long mode */ - mov %esi, %ecx - add $0, %ecx # core number - xor %eax, %eax - lea (0x1000+0x23)(%ecx), %edi - mov %edi, (%ecx) - mov %eax, 4(%ecx) - - lea 0x1000(%ecx), %edi - movl $0x000000e3, 0x00(%edi) - movl %eax, 0x04(%edi) - movl $0x400000e3, 0x08(%edi) - movl %eax, 0x0c(%edi) - movl $0x800000e3, 0x10(%edi) - movl %eax, 0x14(%edi) - movl $0xc00000e3, 0x18(%edi) - movl %eax, 0x1c(%edi) - - # load ROM based identity mapped page tables - mov %ecx, %eax - mov %eax, %cr3 - - # enable PAE - mov %cr4, %eax - bts $5, %eax - mov %eax, %cr4 - - # enable long mode - mov $0xC0000080, %ecx - rdmsr - bts $8, %eax - wrmsr - - # enable paging - mov %cr0, %eax - bts $31, %eax - mov %eax, %cr0 - - # use call far to switch to 64-bit code segment - ljmp $0x18, $1f -1: - -#endif - /* Must maintain 16-byte stack alignment here. */ pushl $0x0 pushl $0x0