3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. 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
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.
16 GUID for the PE/COFF Loader APIs shared between PEI and DXE
20 #ifndef __PEI_PE_COFF_LOADER_H__
21 #define __PEI_PE_COFF_LOADER_H__
24 #define EFI_PEI_PE_COFF_LOADER_GUID \
25 { 0xd8117cff, 0x94a6, 0x11d4, {0x9a, 0x3a, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d } }
27 typedef struct _EFI_PEI_PE_COFF_LOADER_PROTOCOL EFI_PEI_PE_COFF_LOADER_PROTOCOL
;
32 (EFIAPI
*EFI_PEI_PE_COFF_LOADER_GET_IMAGE_INFO
) (
33 IN EFI_PEI_PE_COFF_LOADER_PROTOCOL
*This
,
34 IN OUT PE_COFF_LOADER_IMAGE_CONTEXT
*ImageContext
39 (EFIAPI
*EFI_PEI_PE_COFF_LOADER_LOAD_IMAGE
) (
40 IN EFI_PEI_PE_COFF_LOADER_PROTOCOL
*This
,
41 IN OUT PE_COFF_LOADER_IMAGE_CONTEXT
*ImageContext
46 (EFIAPI
*EFI_PEI_PE_COFF_LOADER_RELOCATE_IMAGE
) (
47 IN EFI_PEI_PE_COFF_LOADER_PROTOCOL
*This
,
48 IN OUT PE_COFF_LOADER_IMAGE_CONTEXT
*ImageContext
53 (EFIAPI
*EFI_PEI_PE_COFF_LOADER_UNLOAD_IMAGE
) (
54 IN EFI_PEI_PE_COFF_LOADER_PROTOCOL
*This
,
55 IN PE_COFF_LOADER_IMAGE_CONTEXT
*ImageContext
58 struct _EFI_PEI_PE_COFF_LOADER_PROTOCOL
{
59 EFI_PEI_PE_COFF_LOADER_GET_IMAGE_INFO GetImageInfo
;
60 EFI_PEI_PE_COFF_LOADER_LOAD_IMAGE LoadImage
;
61 EFI_PEI_PE_COFF_LOADER_RELOCATE_IMAGE RelocateImage
;
62 EFI_PEI_PE_COFF_LOADER_UNLOAD_IMAGE UnloadImage
;
65 extern EFI_GUID gEfiPeiPeCoffLoaderGuid
;