diff options
author | qwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524> | 2007-06-28 07:00:39 +0000 |
---|---|---|
committer | qwang12 <qwang12@6f19259b-4bc3-4df7-8a09-765794883524> | 2007-06-28 07:00:39 +0000 |
commit | 3eb9473ea9a949badfe06ae61d2d3fcfa53651c7 (patch) | |
tree | e9d8c368dbb1e58794b2c00acefe4bbad270f8c4 /EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image | |
parent | 30d4a0c7ec19938196b1308006b990e0945150da (diff) | |
download | edk2-platforms-3eb9473ea9a949badfe06ae61d2d3fcfa53651c7.tar.xz |
Add in the 1st version of ECP.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2832 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image')
-rw-r--r-- | EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image/LoadPe32Image.c | 27 | ||||
-rw-r--r-- | EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image/LoadPe32Image.h | 64 |
2 files changed, 91 insertions, 0 deletions
diff --git a/EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image/LoadPe32Image.c b/EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image/LoadPe32Image.c new file mode 100644 index 0000000000..c113919359 --- /dev/null +++ b/EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image/LoadPe32Image.c @@ -0,0 +1,27 @@ +/*++
+
+Copyright (c) 2004, Intel Corporation
+All rights reserved. This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+Module Name:
+
+ LoadPe32Image.c
+
+Abstract:
+
+ Load PE32 Image Protocol
+
+--*/
+
+#include "Tiano.h"
+#include EFI_PROTOCOL_DEFINITION (LoadPe32Image)
+
+EFI_GUID gEfiLoadPeImageGuid = PE32_IMAGE_PROTOCOL_GUID;
+
+EFI_GUID_STRING(&gEfiLoadPeImageGuid, "LoadPe32Image Protocol", "Tiano Load Pe32 Image Protocol");
diff --git a/EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image/LoadPe32Image.h b/EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image/LoadPe32Image.h new file mode 100644 index 0000000000..07f8e4cd85 --- /dev/null +++ b/EdkCompatibilityPkg/Foundation/Protocol/LoadPe32Image/LoadPe32Image.h @@ -0,0 +1,64 @@ +/*++
+
+Copyright (c) 2004, Intel Corporation
+All rights reserved. This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+Module Name:
+
+ LoadPe32Image.h
+
+Abstract:
+
+ Load PE32 Image Protocol
+
+--*/
+
+#ifndef _LOAD_PE32_IMAGE_H_
+#define _LOAD_PE32_IMAGE_H_
+
+#define PE32_IMAGE_PROTOCOL_GUID \
+ {0x5cb5c776,0x60d5,0x45ee,0x88,0x3c,0x45,0x27,0x8,0xcd,0x74,0x3f }
+
+#define EFI_LOAD_PE_IMAGE_ATTRIBUTE_NONE 0x00
+#define EFI_LOAD_PE_IMAGE_ATTRIBUTE_RUNTIME_REGISTRATION 0x01
+#define EFI_LOAD_PE_IMAGE_ATTRIBUTE_DEBUG_IMAGE_INFO_TABLE_REGISTRATION 0x02
+
+EFI_FORWARD_DECLARATION (EFI_PE32_IMAGE_PROTOCOL);
+
+typedef
+EFI_STATUS
+(EFIAPI *LOAD_PE_IMAGE) (
+ IN EFI_PE32_IMAGE_PROTOCOL *This,
+ IN EFI_HANDLE ParentImageHandle,
+ IN EFI_DEVICE_PATH_PROTOCOL *FilePath,
+ IN VOID *SourceBuffer OPTIONAL,
+ IN UINTN SourceSize,
+ IN EFI_PHYSICAL_ADDRESS DstBuffer OPTIONAL,
+ OUT UINTN *NumberOfPages OPTIONAL,
+ OUT EFI_HANDLE *ImageHandle,
+ OUT EFI_PHYSICAL_ADDRESS *EntryPoint OPTIONAL,
+ IN UINT32 Attribute
+ );
+
+typedef
+EFI_STATUS
+(EFIAPI *UNLOAD_PE_IMAGE) (
+ IN EFI_PE32_IMAGE_PROTOCOL *This,
+ IN EFI_HANDLE ImageHandle
+ );
+
+typedef struct _EFI_PE32_IMAGE_PROTOCOL {
+ LOAD_PE_IMAGE LoadPeImage;
+ UNLOAD_PE_IMAGE UnLoadPeImage;
+} EFI_PE32_IMAGE_PROTOCOL;
+
+extern EFI_GUID gEfiLoadPeImageGuid;
+
+#endif
+
|