1 #------------------------------------------------------------------------------
3 # Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
4 # This program and the accompanying materials
5 # are licensed and made available under the terms and conditions of the BSD License
6 # which accompanies this distribution. The full text of the license may be found at
7 # http://opensource.org/licenses/bsd-license.php.
9 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 # Find and call SecStartup
20 #------------------------------------------------------------------------------
22 ASM_GLOBAL ASM_PFX(CallPeiCoreEntryPoint)
23 ASM_PFX(CallPeiCoreEntryPoint):
25 # Obtain the hob list pointer
29 # Obtain the stack information
43 call ASM_PFX(PlatformInit)
50 # Set stack top pointer
55 # Push the hob list pointer
69 # Push processor count to stack first, then BIST status (AP then BSP)
74 andl $0x000000FF, %ebx
76 jae PushProcessorCount
79 # Some processors report 0 logical processors. Effectively 0 = 1.
80 # So we fix up the processor count
88 # We need to implement a long-term solution for BIST capture. For now, we just copy BSP BIST
89 # for all processor threads
98 # Save Time-Stamp Counter
106 # Pass entry point of the PEI core
108 movl $0xFFFFFFE0, %edi
112 # Pass BFV into the PEI Core
114 movl $0xFFFFFFFC, %edi
118 # Pass stack size into the PEI Core
128 # Pass Control into the PEI Core
130 call ASM_PFX(SecStartup)