]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFrameworkPkg/Include/Ppi/FvLoadFile.h
Update the copyright notice format
[mirror_edk2.git] / IntelFrameworkPkg / Include / Ppi / FvLoadFile.h
CommitLineData
baced228 1/** @file\r
2 Load image file from fv to memory.\r
3\r
2b3687db 4Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>\r
f22f941e 5This program and the accompanying materials are licensed and made available under \r
6the terms and conditions of the BSD License that accompanies this distribution. \r
7The full text of the license may be found at\r
8http://opensource.org/licenses/bsd-license.php. \r
9 \r
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
baced228 12\r
baced228 13 @par Revision Reference:\r
14 This PPI is defined in PEI CIS spec Version 0.91.\r
15\r
16**/\r
17\r
18#ifndef _FV_FILE_LOADER_PPI_H_\r
19#define _FV_FILE_LOADER_PPI_H_\r
20\r
21#define EFI_PEI_FV_FILE_LOADER_GUID \\r
22 { \\r
23 0x7e1f0d85, 0x4ff, 0x4bb2, {0x86, 0x6a, 0x31, 0xa2, 0x99, 0x6a, 0x48, 0xa8 } \\r
24 }\r
25\r
26typedef struct _EFI_PEI_FV_FILE_LOADER_PPI EFI_PEI_FV_FILE_LOADER_PPI;\r
27\r
28/**\r
29 Loads a PEIM into memory for subsequent execution.\r
30\r
31 @param This Interface pointer that implements the Load File PPI instance.\r
f22f941e 32 @param FfsHeader The pointer to the FFS header of the file to load.\r
33 @param ImageAddress The pointer to the address of the loaded Image\r
34 @param ImageSize The pointer to the size of the loaded image.\r
35 @param EntryPoint The pointer to the entry point of the image.\r
baced228 36\r
37 @retval EFI_SUCCESS The image was loaded successfully.\r
38 @retval EFI_OUT_OF_RESOURCES There was not enough memory.\r
39 @retval EFI_INVALID_PARAMETER The contents of the FFS file did not\r
40 contain a valid PE/COFF image that could be loaded.\r
41\r
42**/\r
43typedef\r
44EFI_STATUS\r
69686d56 45(EFIAPI *EFI_PEI_FV_LOAD_FILE)(\r
470d0b27 46 IN EFI_PEI_FV_FILE_LOADER_PPI *This,\r
baced228 47 IN EFI_FFS_FILE_HEADER *FfsHeader,\r
48 OUT EFI_PHYSICAL_ADDRESS *ImageAddress,\r
49 OUT UINT64 *ImageSize,\r
50 OUT EFI_PHYSICAL_ADDRESS *EntryPoint\r
51 );\r
52\r
53/**\r
baced228 54 This PPI is a pointer to the Load File service. This service will be\r
f22f941e 55 published by a PEIM. The PEI Foundation will use this service to\r
2bbaeb0d 56 launch the known non-XIP PE/COFF PEIM images. This service may\r
baced228 57 depend upon the presence of the EFI_PEI_PERMANENT_MEMORY_INSTALLED_PPI.\r
baced228 58**/\r
59struct _EFI_PEI_FV_FILE_LOADER_PPI {\r
2bbaeb0d 60 ///\r
f22f941e 61 /// Loads a PEIM into memory for subsequent execution.\r
2bbaeb0d 62 ///\r
baced228 63 EFI_PEI_FV_LOAD_FILE FvLoadFile;\r
64};\r
65\r
66extern EFI_GUID gEfiPeiFvFileLoaderPpiGuid;\r
67\r
68#endif\r