]> git.proxmox.com Git - mirror_edk2.git/blob - UefiCpuPkg/ResetVector/Vtf0/Ia16/Init16.asm
Adding files from OvmfPkg to common location. This is so multiple packages can use...
[mirror_edk2.git] / UefiCpuPkg / ResetVector / Vtf0 / Ia16 / Init16.asm
1 ;------------------------------------------------------------------------------
2 ; @file
3 ; 16-bit initialization code
4 ;
5 ; Copyright (c) 2008 - 2009, Intel Corporation
6 ; All rights reserved. This program and the accompanying materials
7 ; are licensed and made available under the terms and conditions of the BSD License
8 ; which accompanies this distribution. The full text of the license may be found at
9 ; http://opensource.org/licenses/bsd-license.php
10 ;
11 ; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 ; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 ;
14 ;------------------------------------------------------------------------------
15
16
17 BITS 16
18
19 ;
20 ; @param[out] DI 'BP' to indicate boot-strap processor
21 ;
22 EarlyBspInitReal16:
23 mov di, 'BP'
24 jmp short Main16
25
26 ;
27 ; @param[out] DI 'AP' to indicate application processor
28 ;
29 EarlyApInitReal16:
30 mov di, 'AP'
31 jmp short Main16
32
33 ;
34 ; Modified: EAX
35 ;
36 ; @param[in] EAX Initial value of the EAX register (BIST: Built-in Self Test)
37 ; @param[out] ESP Initial value of the EAX register (BIST: Built-in Self Test)
38 ;
39 EarlyInit16:
40 ;
41 ; ESP - Initial value of the EAX register (BIST: Built-in Self Test)
42 ;
43 mov esp, eax
44
45 debugInitialize
46
47 OneTimeCallRet EarlyInit16
48