]> git.proxmox.com Git - mirror_edk2.git/blob - OldMdePkg/Include/Common/MultiPhase.h
Adding top-level Conf directory for next generation of EDK II build infrastructure...
[mirror_edk2.git] / OldMdePkg / Include / Common / MultiPhase.h
1 /** @file
2 This includes some definitions that will be used in both PEI and DXE phases.
3
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
9
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.
12
13 Module Name: MultiPhase.h
14
15 **/
16
17 #ifndef __MULTI_PHASE_H__
18 #define __MULTI_PHASE_H__
19
20 //
21 // Needed EFI defines for PEI
22 //
23 typedef UINT64 EFI_PHYSICAL_ADDRESS;
24
25 typedef enum {
26 EfiReservedMemoryType,
27 EfiLoaderCode,
28 EfiLoaderData,
29 EfiBootServicesCode,
30 EfiBootServicesData,
31 EfiRuntimeServicesCode,
32 EfiRuntimeServicesData,
33 EfiConventionalMemory,
34 EfiUnusableMemory,
35 EfiACPIReclaimMemory,
36 EfiACPIMemoryNVS,
37 EfiMemoryMappedIO,
38 EfiMemoryMappedIOPortSpace,
39 EfiPalCode,
40 EfiMaxMemoryType
41 } EFI_MEMORY_TYPE;
42
43 typedef UINT32 EFI_STATUS_CODE_TYPE;
44 typedef UINT32 EFI_STATUS_CODE_VALUE;
45
46 typedef struct {
47 UINT16 HeaderSize;
48 UINT16 Size;
49 EFI_GUID Type;
50 } EFI_STATUS_CODE_DATA;
51
52 typedef struct {
53 UINT64 Signature;
54 UINT32 Revision;
55 UINT32 HeaderSize;
56 UINT32 CRC32;
57 UINT32 Reserved;
58 } EFI_TABLE_HEADER;
59
60 #define EFI_PAGE_SIZE 4096
61
62
63 typedef VOID *EFI_HANDLE;
64 typedef UINT16 EFI_HII_HANDLE;
65 typedef UINT16 STRING_REF;
66 typedef struct {
67 INT16 Value;
68 INT16 Exponent;
69 } EFI_EXP_BASE10_DATA;
70
71 //
72 // Define macros to build data structure signatures from characters.
73 //
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))
78
79
80 #include <Protocol/DevicePath.h>
81
82 #endif