]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Core/Dxe/DxeMain.h
modified the UNIXGCC information
[mirror_edk2.git] / MdeModulePkg / Core / Dxe / DxeMain.h
index c5c4f34c49602a9aa05fdad57749f421c221fbb7..765db57f0ce5ca3aa614ec9342f76ff64e300b7f 100644 (file)
@@ -1,5 +1,6 @@
-/*++\r
-\r
+/**@file\r
+  Header file of DxeCore\r
+  \r
 Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
 All rights reserved. This program and the accompanying materials                          \r
 are licensed and made available under the terms and conditions of the BSD License         \r
@@ -9,15 +10,7 @@ http://opensource.org/licenses/bsd-license.php
 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
 \r
-Module Name:\r
-\r
-  DxeMain.h\r
-\r
-Abstract:\r
-\r
-Revision History\r
-\r
---*/\r
+**/\r
 \r
 #ifndef _DXE_MAIN_H_\r
 #define _DXE_MAIN_H_\r
@@ -25,11 +18,9 @@ Revision History
 \r
 \r
 #include <PiDxe.h>\r
-#include <FrameworkPei.h>\r
 \r
 #include <Protocol/LoadedImage.h>\r
 #include <Protocol/GuidedSectionExtraction.h>\r
-#include <Protocol/SectionExtraction.h>\r
 #include <Guid/DebugImageInfoTable.h>\r
 #include <Protocol/DevicePath.h>\r
 #include <Protocol/Runtime.h>\r
@@ -69,7 +60,6 @@ Revision History
 #include <Protocol/Capsule.h>\r
 #include <Protocol/BusSpecificDriverOverride.h>\r
 #include <Protocol/Performance.h>\r
-#include <Guid/StatusCodeDataTypeId.h>\r
 \r
 #include <Library/DxeCoreEntryPoint.h>\r
 #include <Library/DebugLib.h>\r
@@ -78,10 +68,12 @@ Revision History
 #include <Library/HobLib.h>\r
 #include <Library/PerformanceLib.h>\r
 #include <Library/UefiDecompressLib.h>\r
-#include <Library/CustomDecompressLib.h>\r
-#include <Library/PeCoffLoaderLib.h>\r
+#include <Library/ExtractGuidedSectionLib.h>\r
 #include <Library/CacheMaintenanceLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
+#include <Library/PeCoffLib.h>\r
+#include <Library/PcdLib.h>\r
+#include <Library/MemoryAllocationLib.h>\r
 \r
 #include "DebugImageInfo.h"\r
 #include "Library.h"\r
@@ -132,6 +124,13 @@ typedef struct {
   BOOLEAN                     Present;\r
 } ARCHITECTURAL_PROTOCOL_ENTRY;\r
 \r
+typedef struct {\r
+  EFI_STATUS_CODE_DATA  DataHeader;\r
+  EFI_HANDLE            Handle;\r
+} EFI_DXE_DEVICE_HANDLE_EXTENDED_DATA;\r
+\r
+#define EFI_STATUS_CODE_DXE_CORE_GUID \\r
+  { 0x335984bd, 0xe805, 0x409a, { 0xb8, 0xf8, 0xd2, 0x7e, 0xce, 0x5f, 0xf7, 0xa6 } }\r
 \r
 //\r
 // DXE Dispatcher Data structures\r
@@ -202,7 +201,6 @@ extern EFI_DXE_SERVICES                         *gDxeCoreDS;
 extern EFI_HANDLE                               gDxeCoreImageHandle;\r
 \r
 extern EFI_DECOMPRESS_PROTOCOL                  gEfiDecompress;\r
-extern EFI_PEI_PE_COFF_LOADER_PROTOCOL          *gEfiPeiPeCoffLoader;\r
 \r
 extern EFI_RUNTIME_ARCH_PROTOCOL                *gRuntime;\r
 extern EFI_CPU_ARCH_PROTOCOL                    *gCpu;\r
@@ -355,7 +353,7 @@ Returns:
 \r
 EFI_STATUS\r
 CoreInitializeGcdServices (\r
-  IN VOID                  **HobStart,\r
+  IN OUT VOID                  **HobStart,\r
   IN EFI_PHYSICAL_ADDRESS  MemoryBaseAddress,\r
   IN UINT64                MemoryLength\r
   )\r
@@ -368,7 +366,8 @@ Routine Description:
   memory map, so memory allocations and resource allocations can be made.  The first\r
   part of this function can not depend on any memory services until at least one\r
   memory descriptor is provided to the memory services.  Then the memory services\r
-  can be used to intialize the GCD map.\r
+  can be used to intialize the GCD map. The HobStart will be relocated to a pool\r
+  buffer.\r
 \r
 Arguments:\r
 \r
@@ -595,7 +594,7 @@ CoreExitBootServices (
 \r
 Routine Description:\r
 \r
-  EFI 1.0 API to terminate Boot Services\r
+  UEFI 2.0 API to terminate Boot Services\r
 \r
 Arguments:\r
 \r
@@ -2838,4 +2837,30 @@ DxeMainCustomDecompress (
   IN     UINT32                          ScratchSize\r
   );\r
 \r
+EFI_STATUS\r
+EFIAPI\r
+OpenSectionStream (\r
+  IN     UINTN                                     SectionStreamLength,\r
+  IN     VOID                                      *SectionStream,\r
+     OUT UINTN                                     *SectionStreamHandle\r
+  );\r
+\r
+EFI_STATUS\r
+EFIAPI\r
+GetSection (\r
+  IN UINTN                                              SectionStreamHandle,\r
+  IN EFI_SECTION_TYPE                                   *SectionType,\r
+  IN EFI_GUID                                           *SectionDefinitionGuid,\r
+  IN UINTN                                              SectionInstance,\r
+  IN VOID                                               **Buffer,\r
+  IN OUT UINTN                                          *BufferSize,\r
+  OUT UINT32                                            *AuthenticationStatus\r
+  );\r
+\r
+EFI_STATUS\r
+EFIAPI\r
+CloseSectionStream (\r
+  IN  UINTN                                   StreamHandleToClose\r
+  );\r
+\r
 #endif\r