]> git.proxmox.com Git - mirror_edk2.git/blob - IntelFspWrapperPkg/FspWrapperSecCore/Vtf0/Ia16/ResetVec.asm16
DynamicTablesPkg: GTDT updates for ACPI 6.3
[mirror_edk2.git] / IntelFspWrapperPkg / FspWrapperSecCore / Vtf0 / Ia16 / ResetVec.asm16
1 ;; @file
2 ; Reset Vector Data structure
3 ; This structure is located at 0xFFFFFFC0
4 ;
5 ; Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
6 ; SPDX-License-Identifier: BSD-2-Clause-Patent
7 ;
8 ;;
9
10 BITS 16
11
12
13 ;
14 ; The layout of this file is fixed. The build tool makes assumption of the layout.
15 ;
16
17 ORG 0x0
18 ;
19 ; Reserved
20 ;
21 ReservedData: DD 0eeeeeeeeh, 0eeeeeeeeh
22
23 ; ORG 0x10
24 TIMES 0x10-($-$$) DB 0
25 ;
26 ; This is located at 0xFFFFFFD0h
27 ;
28 mov di, "AP"
29 jmp ApStartup
30
31 ; ORG 0x20
32
33 TIMES 0x20-($-$$) DB 0
34
35 ; Pointer to the entry point of the PEI core
36 ; It is located at 0xFFFFFFE0, and is fixed up by some build tool
37 ; So if the value 8..1 appears in the final FD image, tool failure occurs.
38 ;
39 PeiCoreEntryPoint: DD 0x12345678
40
41 ;
42 ; This is the handler for all kinds of exceptions. Since it's for debugging
43 ; purpose only, nothing except a deadloop would be done here. Developers could
44 ; analyze the cause of the exception if a debugger had been attached.
45 ;
46 InterruptHandler:
47 jmp $
48 iret
49
50 ; ORG 0x30
51 TIMES 0x30-($-$$) DB 0
52 ;
53 ; For IA32, the reset vector must be at 0xFFFFFFF0, i.e., 4G-16 byte
54 ; Execution starts here upon power-on/platform-reset.
55 ;
56 ResetHandler:
57 nop
58 nop
59
60 ApStartup:
61 ;
62 ; Jmp Rel16 instruction
63 ; Use machine code directly in case of the assembler optimization
64 ; SEC entry point relatvie address will be fixed up by some build tool.
65 ;
66 ; Typically, SEC entry point is the function _ModuleEntryPoint() defined in
67 ; SecEntry.asm
68 ;
69 DB 0x0e9
70 DW -3
71
72 ; ORG 0x38
73
74 TIMES 0x38-($-$$) DB 0
75 ;
76 ; Ap reset vector segment address is at 0xFFFFFFF8
77 ; This will be fixed up by some build tool,
78 ; so if the value 1..8 appears in the final FD image,
79 ; tool failure occurs
80 ;
81 ApSegAddress: dd 0x12345678
82
83 ; ORG 0x3c
84 TIMES 0x3c-($-$$) DB 0
85 ;
86 ; BFV Base is at 0xFFFFFFFC
87 ; This will be fixed up by some build tool,
88 ; so if the value 1..8 appears in the final FD image,
89 ; tool failure occurs.
90 ;
91 BfvBase: DD 0x12345678
92
93 ;
94 ; Nothing can go here, otherwise the layout of this file would change.
95 ;
96
97 ; END