1 ;------------------------------------------------------------------------------
3 ; First code executed by processor after resetting.
5 ; Copyright (c) 2008 - 2014, Intel Corporation. All rights reserved.<BR>
6 ; Copyright (c) 2019, Citrix Systems, Inc.
8 ; SPDX-License-Identifier: BSD-2-Clause-Patent
10 ;------------------------------------------------------------------------------
17 ; Pad the image size to 4k when page tables are in VTF0
19 ; If the VTF0 image has page tables built in, then we need to make
20 ; sure the end of VTF0 is 4k above where the page tables end.
22 ; This is required so the page tables will be 4k aligned when VTF0 is
23 ; located just below 0x100000000 (4GB) in the firmware device.
25 %ifdef ALIGN_TOP_TO_4K_FOR_PAGING
26 TIMES (0x1000 - ($ - EndOfPageTables) - (fourGigabytes - xenPVHEntryPoint)) DB 0
32 ; Entry point to use when running as a Xen PVH guest. (0xffffffd0)
34 ; Description of the expected state of the machine when this entry point is
35 ; used can be found at:
36 ; https://xenbits.xenproject.org/docs/unstable/misc/pvh.html
43 applicationProcessorEntryPoint:
45 ; Application Processors entry point
47 ; GenFv generates code aligned on a 4k boundary which will jump to this
48 ; location. (0xffffffe0) This allows the Local APIC Startup IPI to be
49 ; used to wake up the application processors.
60 ; VTF-0 means that the VTF (Volume Top File) code does not require
72 ; This is where the processor will begin execution
74 jmp EarlyBspInitReal16