]> git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/Sec/Ia32/SecEntry.S
Add initial version of Open Virtual Machine Firmware (OVMF) platform.
[mirror_edk2.git] / OvmfPkg / Sec / Ia32 / SecEntry.S
1 #
2 # ConvertAsm.py: Automatically generated from SecEntry.asm
3 #
4 # TITLE SecEntry.asm
5
6 #------------------------------------------------------------------------------
7 #*
8 #* Copyright 2006 - 2009, Intel Corporation
9 #* All rights reserved. This program and the accompanying materials
10 #* are licensed and made available under the terms and conditions of the BSD License
11 #* which accompanies this distribution. The full text of the license may be found at
12 #* http://opensource.org/licenses/bsd-license.php
13 #*
14 #* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
15 #* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
16 #*
17 #* CpuAsm.asm
18 #*
19 #* Abstract:
20 #*
21 #------------------------------------------------------------------------------
22
23
24 #include "SecMain.h"
25
26 #EXTERN ASM_PFX(SecCoreStartupWithStack)
27
28 #
29 # SecCore Entry Point
30 #
31 # Processor is in flat protected mode
32 #
33 # @param ESI Pointer to SEC Core Entry Point (this function)
34 # @param EDI Pointer to PEI Core Entry Point
35 # @param EBP Pointer to the start of the Boot Firmware Volume
36 #
37 # @return None
38 #
39 #
40 .intel_syntax
41 ASM_GLOBAL ASM_PFX(_ModuleEntryPoint)
42 ASM_PFX(_ModuleEntryPoint):
43
44 #
45 # Load temporary stack top at very low memory. The C code
46 # can reload to a better address.
47 #
48 mov eax, INITIAL_TOP_OF_STACK
49 mov esp, eax
50 nop
51
52 #
53 # Call into C code
54 #
55 push eax
56 push edi
57 push esi
58 push ebp
59 call ASM_PFX(SecCoreStartupWithStack)
60
61
62 #END
63