1 /*++
2 
3 Copyright (c) 2004 - 2011, 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
8 
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.
11 
12 
13 Module Name:
14 
15   EdkIIGlueDxe.h
16 
17 Abstract:
18 
19   Root include file for DXE modules
20 
21 --*/
22 
23 #ifndef __EDKII_GLUE_DXE_H__
24 #define __EDKII_GLUE_DXE_H__
25 
26 
27 //
28 // General Type & API definitions
29 //
30 
31 #include "Tiano.h"
32 #include "BootMode.h"
33 #include "EfiBootScript.h"
34 #include "EfiCapsule.h"
35 #include "EfiDependency.h"
36 #include "EfiImageFormat.h"
37 #include "EfiImage.h"
38 #include "EfiPeOptionalHeader.h"
39 #include "EfiFirmwareVolumeHeader.h"
40 #include "EfiFirmwareFileSystem.h"
41 #include "PeiHob.h"
42 #if (EFI_SPECIFICATION_VERSION >= 0x0002000A)
43 #include "TianoHii.h"
44 #else
45 #include "EfiInternalFormRepresentation.h"
46 #endif
47 #include "EfiStatusCode.h"
48 #include "EfiPerf.h"
49 
50 //
51 // IPF only
52 //
53 #ifdef MDE_CPU_IPF
54 #include "SalApi.h"
55 #endif
56 
57 //
58 // GUID definitions
59 //
60 
61 #if (EFI_SPECIFICATION_VERSION >= 0x00020000)
62 #include EFI_GUID_DEFINITION (EventGroup)
63 #include EFI_GUID_DEFINITION (EventLegacyBios)
64 #include EFI_GUID_DEFINITION (FrameworkDevicePath)
65 
66 #include EFI_PROTOCOL_DEFINITION (EdidActive)
67 #include EFI_PROTOCOL_DEFINITION (EdidDiscovered)
68 #include EFI_PROTOCOL_DEFINITION (EdidOverride)
69 #include EFI_PROTOCOL_DEFINITION (GraphicsOutput)
70 #include EFI_PROTOCOL_DEFINITION (Hash)
71 #include EFI_PROTOCOL_DEFINITION (ScsiPassThruExt)
72 #include EFI_PROTOCOL_DEFINITION (TapeIo)
73 #endif
74 
75 #include EFI_GUID_DEFINITION (Acpi)
76 #include EFI_GUID_DEFINITION (AcpiTableStorage)
77 #include EFI_GUID_DEFINITION (Apriori)
78 #include EFI_GUID_DEFINITION (Capsule)
79 #include EFI_GUID_DEFINITION (DataHubRecords)
80 #include EFI_GUID_DEFINITION (DebugImageInfoTable)
81 #include EFI_GUID_DEFINITION (DxeServices)
82 #include EFI_GUID_DEFINITION (FirmwareFileSystem)
83 #include EFI_GUID_DEFINITION (GlobalVariable)
84 #include EFI_GUID_DEFINITION (Gpt)
85 #include EFI_GUID_DEFINITION (Hob)
86 #include EFI_GUID_DEFINITION (MemoryAllocationHob)
87 #include EFI_GUID_DEFINITION (Mps)
88 #include EFI_GUID_DEFINITION (PcAnsi)
89 #include EFI_GUID_DEFINITION (SalSystemTable)
90 #include EFI_GUID_DEFINITION (SmBios)
91 //#include EFI_GUID_DEFINITION (SmmCommunicate)
92 #include EFI_GUID_DEFINITION (SmramMemoryReserve)
93 //
94 // *** NOTE ***: StatusCodeDataTypeId definition differences need to be
95 // resolved when porting a module to real EDK II
96 //
97 #include EFI_GUID_DEFINITION (StatusCodeDataTypeId)
98 #include EFI_GUID_DEFINITION (PeiPerformanceHob)
99 
100 //
101 // Protocol definitions
102 //
103 #if (EFI_SPECIFICATION_VERSION >= 0x0002000A)
104 #include EFI_PROTOCOL_DEFINITION (FormBrowser2)
105 #include EFI_PROTOCOL_DEFINITION (HiiConfigAccess)
106 #include EFI_PROTOCOL_DEFINITION (HiiConfigRouting)
107 #include EFI_PROTOCOL_DEFINITION (HiiDatabase)
108 #include EFI_PROTOCOL_DEFINITION (HiiFont)
109 #include EFI_PROTOCOL_DEFINITION (HiiImage)
110 #include EFI_PROTOCOL_DEFINITION (HiiString)
111 #endif
112 
113 #if (EFI_SPECIFICATION_VERSION >= 0x00020000)
114 #include EFI_PROTOCOL_DEFINITION (DevicePathFromText)
115 #include EFI_PROTOCOL_DEFINITION (DevicePathToText)
116 #include EFI_PROTOCOL_DEFINITION (DevicePathUtilities)
117 #include EFI_PROTOCOL_DEFINITION (Dhcp4)
118 #include EFI_PROTOCOL_DEFINITION (Ip4)
119 #include EFI_PROTOCOL_DEFINITION (Ip4Config)
120 #include EFI_PROTOCOL_DEFINITION (IScsiInitiatorName)
121 #include EFI_PROTOCOL_DEFINITION (UsbHostController)
122 #include EFI_PROTOCOL_DEFINITION (ManagedNetwork)
123 #include EFI_PROTOCOL_DEFINITION (Mtftp4)
124 #include EFI_PROTOCOL_DEFINITION (ServiceBinding)
125 #include EFI_PROTOCOL_DEFINITION (Tcp4)
126 #include EFI_PROTOCOL_DEFINITION (Udp4)
127 #include EFI_PROTOCOL_DEFINITION (Arp)
128 // check here: currently not implementated
129 //#include EFI_PROTOCOL_DEFINITION (AuthenticationInfo)
130 #endif
131 
132 #include EFI_PROTOCOL_DEFINITION (AcpiSupport)
133 #include EFI_PROTOCOL_DEFINITION (Bis)
134 #include EFI_PROTOCOL_DEFINITION (BlockIo)
135 #include EFI_PROTOCOL_DEFINITION (BootScriptSave)
136 #include EFI_PROTOCOL_DEFINITION (BusSpecificDriverOverride)
137 #include EFI_PROTOCOL_DEFINITION (ComponentName)
138 #if (EFI_SPECIFICATION_VERSION >= 0x00020000)
139 #include EFI_PROTOCOL_DEFINITION (ComponentName2)
140 #endif
141 #include EFI_PROTOCOL_DEFINITION (CpuIo)
142 #include EFI_PROTOCOL_DEFINITION (DataHub)
143 #include EFI_PROTOCOL_DEFINITION (DebugPort)
144 #include EFI_PROTOCOL_DEFINITION (DebugSupport)
145 #include EFI_PROTOCOL_DEFINITION (Decompress)
146 #include EFI_PROTOCOL_DEFINITION (DeviceIo)
147 #include EFI_PROTOCOL_DEFINITION (DevicePath)
148 #include EFI_PROTOCOL_DEFINITION (DiskIo)
149 #include EFI_PROTOCOL_DEFINITION (DriverBinding)
150 #include EFI_PROTOCOL_DEFINITION (DriverConfiguration)
151 #include EFI_PROTOCOL_DEFINITION (DriverDiagnostics)
152 #include EFI_PROTOCOL_DEFINITION (Ebc)
153 #include EFI_PROTOCOL_DEFINITION (EfiNetworkInterfaceIdentifier)
154 #include EFI_PROTOCOL_DEFINITION (FileInfo)
155 #include EFI_PROTOCOL_DEFINITION (FileSystemInfo)
156 #include EFI_PROTOCOL_DEFINITION (FileSystemVolumeLabelInfo)
157 #include EFI_PROTOCOL_DEFINITION (FirmwareVolume)
158 #include EFI_PROTOCOL_DEFINITION (FirmwareVolumeBlock)
159 #include EFI_PROTOCOL_DEFINITION (FirmwareVolumeDispatch)
160 #if (EFI_SPECIFICATION_VERSION < 0x0002000A)
161 #include EFI_PROTOCOL_DEFINITION (FormBrowser)
162 #include EFI_PROTOCOL_DEFINITION (FormCallback)
163 #endif
164 #include EFI_PROTOCOL_DEFINITION (GuidedSectionExtraction)
165 #if (EFI_SPECIFICATION_VERSION < 0x0002000A)
166 #include EFI_PROTOCOL_DEFINITION (Hii)
167 #endif
168 #include EFI_PROTOCOL_DEFINITION (IdeControllerInit)
169 #include EFI_PROTOCOL_DEFINITION (IncompatiblePciDeviceSupport)
170 #include EFI_PROTOCOL_DEFINITION (Legacy8259)
171 #include EFI_PROTOCOL_DEFINITION (LegacyBios)
172 #include EFI_PROTOCOL_DEFINITION (LegacyBiosPlatform)
173 #include EFI_PROTOCOL_DEFINITION (LegacyInterrupt)
174 #include EFI_PROTOCOL_DEFINITION (LegacyRegion)
175 #include EFI_PROTOCOL_DEFINITION (LoadedImage)
176 #include EFI_PROTOCOL_DEFINITION (LoadFile)
177 #include EFI_PROTOCOL_DEFINITION (PciHostBridgeResourceAllocation)
178 #include EFI_PROTOCOL_DEFINITION (PciHotPlugInit)
179 #include EFI_PROTOCOL_DEFINITION (PciIo)
180 #include EFI_PROTOCOL_DEFINITION (PciPlatform)
181 #include EFI_PROTOCOL_DEFINITION (PciRootBridgeIo)
182 #include EFI_PROTOCOL_DEFINITION (PlatformDriverOverride)
183 #include EFI_PROTOCOL_DEFINITION (PxeBaseCode)
184 #include EFI_PROTOCOL_DEFINITION (PxeBaseCodeCallBack)
185 #include EFI_PROTOCOL_DEFINITION (ScsiIo)
186 #include EFI_PROTOCOL_DEFINITION (ScsiPassThru)
187 #include EFI_PROTOCOL_DEFINITION (SectionExtraction)
188 #include EFI_PROTOCOL_DEFINITION (SerialIo)
189 #include EFI_PROTOCOL_DEFINITION (SimpleFileSystem)
190 #include EFI_PROTOCOL_DEFINITION (SimpleNetwork)
191 #include EFI_PROTOCOL_DEFINITION (SimplePointer)
192 #include EFI_PROTOCOL_DEFINITION (SimpleTextIn)
193 #include EFI_PROTOCOL_DEFINITION (SimpleTextOut)
194 #include EFI_PROTOCOL_DEFINITION (Smbus)
195 #include EFI_PROTOCOL_DEFINITION (SmmAccess)
196 #include EFI_PROTOCOL_DEFINITION (SmmBase)
197 #include EFI_PROTOCOL_DEFINITION (SmmControl)
198 #include EFI_PROTOCOL_DEFINITION (SmmGpiDispatch)
199 #include EFI_PROTOCOL_DEFINITION (SmmIchnDispatch)
200 #include EFI_PROTOCOL_DEFINITION (SmmPeriodicTimerDispatch)
201 #include EFI_PROTOCOL_DEFINITION (SmmPowerButtonDispatch)
202 #include EFI_PROTOCOL_DEFINITION (SmmStandbyButtonDispatch)
203 #include EFI_PROTOCOL_DEFINITION (SmmStatusCode)
204 #include EFI_PROTOCOL_DEFINITION (SmmSwDispatch)
205 #include EFI_PROTOCOL_DEFINITION (SmmSxDispatch)
206 #include EFI_PROTOCOL_DEFINITION (SmmUsbDispatch)
207 #include EFI_PROTOCOL_DEFINITION (UgaDraw)
208 #include EFI_PROTOCOL_DEFINITION (UnicodeCollation)
209 #include EFI_PROTOCOL_DEFINITION (UsbHostController)
210 #include EFI_PROTOCOL_DEFINITION (UsbIo)
211 #include EFI_PROTOCOL_DEFINITION (SecurityPolicy)
212 #include EFI_PROTOCOL_DEFINITION (LoadPe32Image)
213 
214 //
215 // Arch Protocol definitions
216 //
217 
218 #include EFI_ARCH_PROTOCOL_DEFINITION (Bds)
219 #include EFI_ARCH_PROTOCOL_DEFINITION (Cpu)
220 #include EFI_ARCH_PROTOCOL_DEFINITION (Metronome)
221 #include EFI_ARCH_PROTOCOL_DEFINITION (MonotonicCounter)
222 #include EFI_ARCH_PROTOCOL_DEFINITION (RealTimeClock)
223 #include EFI_ARCH_PROTOCOL_DEFINITION (Reset)
224 #include EFI_ARCH_PROTOCOL_DEFINITION (Runtime)
225 #include EFI_ARCH_PROTOCOL_DEFINITION (Security)
226 #include EFI_ARCH_PROTOCOL_DEFINITION (StatusCode)
227 #include EFI_ARCH_PROTOCOL_DEFINITION (Timer)
228 #include EFI_ARCH_PROTOCOL_DEFINITION (Variable)
229 #include EFI_ARCH_PROTOCOL_DEFINITION (VariableWrite)
230 #include EFI_ARCH_PROTOCOL_DEFINITION (WatchdogTimer)
231 
232 //
233 // IPF only
234 //
235 #ifdef MDE_CPU_IPF
236 #include EFI_PROTOCOL_DEFINITION (ExtendedSalGuid)
237 #include EFI_PROTOCOL_DEFINITION (ExtendedSalBootService)
238 #endif
239 
240 //
241 // EDK Library headers used by EDKII Glue Libraries
242 //
243 #include "EfiDriverLib.h"
244 #include "EfiCapsule.h"
245 
246 #include "Common/EdkIIGlueDefinitionChangesDxe.h"
247 
248 
249 //
250 // EdkII Glue Library Class headers
251 //
252 
253 #include "EdkIIGlueBase.h"
254 #include "Library/EdkIIGlueDebugLib.h"
255 #include "Library/EdkIIGluePostCodeLib.h"
256 #include "Library/EdkIIGlueReportStatusCodeLib.h"
257 #include "Library/EdkIIGlueHiiLib.h"
258 #include "Library/EdkIIGlueHobLib.h"
259 #include "Library/EdkIIGlueMemoryAllocationLib.h"
260 #include "Library/EdkIIGlueSmbusLib.h"
261 #include "Library/EdkIIGlueDxeRuntimeDriverLib.h"
262 #include "Library/EdkIIGlueDxeServicesTableLib.h"
263 #include "Library/EdkIIGlueDxeSmmDriverEntryPoint.h"
264 #include "Library/EdkIIGlueDevicePathLib.h"
265 #include "Library/EdkIIGlueUefiLib.h"
266 #include "Library/EdkIIGlueUefiDecompressLib.h"
267 #include "Library/EdkIIGlueUefiDriverModelLib.h"
268 #include "Library/EdkIIGlueUefiBootServicesTableLib.h"
269 #include "Library/EdkIIGlueUefiDriverEntryPoint.h"
270 #include "Library/EdkIIGlueUefiRuntimeServicesTableLib.h"
271 
272 #endif
273