[edk2-devel] [PATCH 2/4] UefiCpuPkg/SecCore: Remove AP waking Vector logic in SecCore
Zhiguang Liu
zhiguang.liu at intel.com
Mon Jul 10 03:17:04 UTC 2023
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 <eric.dong at intel.com>
Cc: Ray Ni <ray.ni at intel.com>
Cc: Rahul Kumar <rahul1.kumar at intel.com>
Cc: Gerd Hoffmann <kraxel at redhat.com>
Signed-off-by: Zhiguang Liu <zhiguang.liu at intel.com>
---
UefiCpuPkg/SecCore/Ia32/ResetVec.nasmb | 36 +++-----------------------
1 file changed, 3 insertions(+), 33 deletions(-)
diff --git a/UefiCpuPkg/SecCore/Ia32/ResetVec.nasmb b/UefiCpuPkg/SecCore/Ia32/ResetVec.nasmb
index 1dfc4efe4c..df5f439c4e 100644
--- a/UefiCpuPkg/SecCore/Ia32/ResetVec.nasmb
+++ b/UefiCpuPkg/SecCore/Ia32/ResetVec.nasmb
@@ -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
;
@@ -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
@@ -70,7 +51,7 @@ 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.
@@ -78,7 +59,6 @@ ASM_PFX(InterruptHandler):
ResetHandler:
nop
nop
-ApStartup:
;
; Jmp Rel16 instruction
; Use machine code directly in case of the assembler optimization
@@ -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,
--
2.31.1.windows.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#106759): https://edk2.groups.io/g/devel/message/106759
Mute This Topic: https://groups.io/mt/100051789/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list