Skip to content

Commit

Permalink
UefiCpuPkg/SecCore: Remove AP waking Vector logic in SecCore
Browse files Browse the repository at this point in the history
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4494

There are two part of AP waking Vector logic in SecCore.
The first one working with GenFv to find a free 4K aligned space,
use the 4K aligned address as AP waking Vector and jump to 4G-30h,
and finally jump to ApStartup..
The second one hard code uses 4G-1000h as AP waking Vector and
jump to ApStartup.
Both usages are no longer used. Remove them.

Cc: Eric Dong <[email protected]>
Cc: Ray Ni <[email protected]>
Cc: Rahul Kumar <[email protected]>
Cc: Gerd Hoffmann <[email protected]>
Reviewed-by: Ray Ni <[email protected]>
Signed-off-by: Zhiguang Liu <[email protected]>
  • Loading branch information
LiuZhiguang001 authored and mergify[bot] committed Sep 18, 2023
1 parent 3924562 commit 718cf21
Showing 1 changed file with 3 additions and 33 deletions.
36 changes: 3 additions & 33 deletions UefiCpuPkg/SecCore/Ia32/ResetVec.nasmb
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,6 @@ USE16

ORG 0h

;
; 0xFFFFF000
;
; We enter here with CS:IP = 0xFF00:0x0000. Do a far-jump to change CS to 0xF000
; and IP to ApStartup.
;
ApVector:
mov di, "AP"
jmp 0xF000:0xF000+ApStartup

TIMES 0xFC0-($-$$) nop

;
; This should be at 0xFFFFFFC0
;
Expand All @@ -45,14 +33,7 @@ ApVector:
;
ReservedData: DD 0eeeeeeeeh, 0eeeeeeeeh

TIMES 0xFD0-($-$$) nop
;
; This is located at 0xFFFFFFD0
;
mov di, "PA"
jmp ApStartup

TIMES 0xFE0-($-$$) nop
TIMES 0x20-($-$$) nop
;
; Pointer to the entry point of the PEI core
; It is located at 0xFFFFFFE0, and is fixed up by some build tool
Expand All @@ -70,15 +51,14 @@ ASM_PFX(InterruptHandler):
jmp $
iret

TIMES 0xFF0-($-$$) nop
TIMES 0x30-($-$$) nop
;
; For IA32, the reset vector must be at 0xFFFFFFF0, i.e., 4G-16 byte
; Execution starts here upon power-on/platform-reset.
;
ResetHandler:
nop
nop
ApStartup:
;
; Jmp Rel16 instruction
; Use machine code directly in case of the assembler optimization
Expand All @@ -90,17 +70,7 @@ ApStartup:
DB 0e9h
DW -3


TIMES 0xFF8-($-$$) nop
;
; Ap reset vector segment address is at 0xFFFFFFF8
; This will be fixed up by some build tool,
; so if the value 1..8 appears in the final FD image,
; tool failure occurs
;
ApSegAddress: dd 12345678h

TIMES 0xFFC-($-$$) nop
TIMES 0x3C-($-$$) nop
;
; BFV Base is at 0xFFFFFFFC
; This will be fixed up by some build tool,
Expand Down

0 comments on commit 718cf21

Please sign in to comment.