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 // Needed EFI defines for PEI
23 typedef UINT64 EFI_PHYSICAL_ADDRESS
;
26 EfiReservedMemoryType
,
31 EfiRuntimeServicesCode
,
32 EfiRuntimeServicesData
,
33 EfiConventionalMemory
,
38 EfiMemoryMappedIOPortSpace
,
43 typedef UINT32 EFI_STATUS_CODE_TYPE
;
44 typedef UINT32 EFI_STATUS_CODE_VALUE
;
50 } EFI_STATUS_CODE_DATA
;
60 #define EFI_PAGE_SIZE 4096
63 typedef VOID
*EFI_HANDLE
;
64 typedef UINT16 EFI_HII_HANDLE
;
65 typedef UINT16 STRING_REF
;
69 } EFI_EXP_BASE10_DATA
;
72 // Define macros to build data structure signatures from characters.
74 #define EFI_SIGNATURE_16(A, B) ((A) | (B << 8))
75 #define EFI_SIGNATURE_32(A, B, C, D) (EFI_SIGNATURE_16 (A, B) | (EFI_SIGNATURE_16 (C, D) << 16))
76 #define EFI_SIGNATURE_64(A, B, C, D, E, F, G, H) \
77 (EFI_SIGNATURE_32 (A, B, C, D) | ((UINT64) (EFI_SIGNATURE_32 (E, F, G, H)) << 32))
80 #include <Protocol/DevicePath.h>