]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/Sec/X64/SecEntry.asm
Clean up SEC implementation for Ovmf.
[mirror_edk2.git] / OvmfPkg / Sec / X64 / SecEntry.asm
index 8b836de62e398e58a1a5c9e195d071f9fb2fe1a4..55f5eabbfdc473242e8d3d45b8e75a7076db6cd9 100644 (file)
@@ -1,8 +1,8 @@
       TITLE   SecEntry.asm\r
 ;------------------------------------------------------------------------------\r
 ;*\r
-;*   Copyright 2006 - 2009, Intel Corporation\r
-;*   All rights reserved. This program and the accompanying materials\r
+;*   Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>\r
+;*   This program and the accompanying materials\r
 ;*   are licensed and made available under the terms and conditions of the BSD License\r
 ;*   which accompanies this distribution.  The full text of the license may be found at\r
 ;*   http://opensource.org/licenses/bsd-license.php\r
 ;*\r
 ;------------------------------------------------------------------------------\r
 \r
-#include "SecMain.h"\r
+#include <Base.h>\r
 \r
 .code\r
 \r
 EXTERN SecCoreStartupWithStack:PROC\r
 \r
 ;\r
-;  SecCore Entry Point\r
+; SecCore Entry Point\r
 ;\r
-;  Processor is in flat protected mode\r
+; Processor is in flat protected mode\r
 ;\r
-;  @param  ESI  Pointer to SEC Core Entry Point (this function)\r
-;  @param  EDI  Pointer to PEI Core Entry Point\r
-;  @param  EBP  Pointer to the start of the Boot Firmware Volume\r
-;\r
-;  @return None\r
+; @param[in]  RAX   Initial value of the EAX register (BIST: Built-in Self Test)\r
+; @param[in]  DI    'BP': boot-strap processor, or 'AP': application processor\r
+; @param[in]  RBP   Pointer to the start of the Boot Firmware Volume\r
 ;\r
+; @return     None  This routine does not return\r
 ;\r
 _ModuleEntryPoint PROC PUBLIC\r
 \r
@@ -40,20 +39,17 @@ _ModuleEntryPoint PROC PUBLIC
     ; Load temporary stack top at very low memory.  The C code\r
     ; can reload to a better address.\r
     ;\r
-    mov     rsp, INITIAL_TOP_OF_STACK\r
+    mov     rsp, BASE_512KB\r
     nop\r
 \r
     ;\r
     ; Setup parameters and call SecCoreStartupWithStack\r
     ;   rcx: BootFirmwareVolumePtr\r
-    ;   rdx: SecCoreEntryPoint\r
-    ;   r8:  PeiCoreEntryPoint\r
-    ;   r9:  TopOfCurrentStack\r
+    ;   rdx: TopOfCurrentStack\r
     ;\r
     mov     rcx, rbp\r
-    mov     rdx, rsi\r
-    mov     r8, rdi\r
-    mov     r9, rsp\r
+    mov     rdx, rsp\r
+    sub     rsp, 20h\r
     call    SecCoreStartupWithStack\r
 \r
 _ModuleEntryPoint ENDP\r