2 This includes some definitions that will be used in both PEI and DXE phases.
4 Copyright (c) 2006, Intel Corporation
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 Module Name: MultiPhase.h
17 #ifndef __MULTI_PHASE_H__
18 #define __MULTI_PHASE_H__
21 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
23 // Needed EFI defines for PEI
25 typedef UINT64 EFI_PHYSICAL_ADDRESS
;
28 EfiReservedMemoryType
,
33 EfiRuntimeServicesCode
,
34 EfiRuntimeServicesData
,
35 EfiConventionalMemory
,
40 EfiMemoryMappedIOPortSpace
,
45 typedef UINT32 EFI_STATUS_CODE_TYPE
;
46 typedef UINT32 EFI_STATUS_CODE_VALUE
;
52 } EFI_STATUS_CODE_DATA
;
62 #define EFI_PAGE_SIZE 4096
65 typedef VOID
*EFI_HANDLE
;
66 typedef UINT16 EFI_HII_HANDLE
;
67 typedef UINT16 STRING_REF
;
71 } EFI_EXP_BASE10_DATA
;
74 // Define macros to build data structure signatures from characters.
76 #define EFI_SIGNATURE_16(A, B) ((A) | (B << 8))
77 #define EFI_SIGNATURE_32(A, B, C, D) (EFI_SIGNATURE_16 (A, B) | (EFI_SIGNATURE_16 (C, D) << 16))
78 #define EFI_SIGNATURE_64(A, B, C, D, E, F, G, H) \
79 (EFI_SIGNATURE_32 (A, B, C, D) | ((UINT64) (EFI_SIGNATURE_32 (E, F, G, H)) << 32))
82 #include <Protocol/DevicePath.h>