]> git.proxmox.com Git - mirror_edk2.git/blob - UefiCpuPkg/CpuMpPei/X64/MpEqu.inc
UefiCpuPkg/CpuMpPei: Implementation of PeiSwitchBSP ()
[mirror_edk2.git] / UefiCpuPkg / CpuMpPei / X64 / MpEqu.inc
1 ;------------------------------------------------------------------------------ ;
2 ; Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
3 ; This program and the accompanying materials
4 ; are licensed and made available under the terms and conditions of the BSD License
5 ; which accompanies this distribution. The full text of the license may be found at
6 ; http://opensource.org/licenses/bsd-license.php.
7 ;
8 ; THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
9 ; WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
10 ;
11 ; Module Name:
12 ;
13 ; MpEqu.inc
14 ;
15 ; Abstract:
16 ;
17 ; This is the equates file for Multiple Processor support
18 ;
19 ;-------------------------------------------------------------------------------
20
21 PROTECT_MODE_CS equ 10h
22 PROTECT_MODE_DS equ 18h
23 LONG_MODE_CS equ 38h
24 LONG_MODE_DS equ 30h
25
26 VacantFlag equ 00h
27 NotVacantFlag equ 0ffh
28
29 CPU_SWITCH_STATE_IDLE equ 0
30 CPU_SWITCH_STATE_STORED equ 1
31 CPU_SWITCH_STATE_LOADED equ 2
32
33 LockLocation equ (RendezvousFunnelProcEnd - RendezvousFunnelProcStart)
34 StackStartAddressLocation equ LockLocation + 08h
35 StackSizeLocation equ LockLocation + 10h
36 ApProcedureLocation equ LockLocation + 18h
37 GdtrLocation equ LockLocation + 20h
38 IdtrLocation equ LockLocation + 2Ah
39 BufferStartLocation equ LockLocation + 34h
40 PmodeOffsetLocation equ LockLocation + 3Ch
41 NumApsExecutingLoction equ LockLocation + 44h
42 LmodeOffsetLocation equ LockLocation + 4Ch
43 Cr3Location equ LockLocation + 54h
44
45 ;-------------------------------------------------------------------------------