Add PcdComponentName2Disable and PcdDriverDiagnostics2Disable.
[mirror_edk2.git] / EdkUnixPkg / Include / Ppi / UnixPeiLoadFile.h
1 /*++
2
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
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 Module Name:
13
14 UnixPeiLoadFile.h
15
16 Abstract:
17
18 Unix Load File PPI.
19
20 When the PEI core is done it calls the DXE IPL via PPI
21
22 --*/
23
24 #ifndef __UNIX_PEI_LOAD_FILE_H__
25 #define __UNIX_PEI_LOAD_FILE_H__
26
27 #include <UnixDxe.h>
28
29 #define UNIX_PEI_LOAD_FILE_GUID \
30 { \
31 0xf2f48768, 0x8985, 0x11db, {0xb8, 0xda, 0x00, 0x40, 0xd0, 0x2b, 0x18, 0x35 } \
32 }
33
34 typedef
35 EFI_STATUS
36 (EFIAPI *UNIX_PEI_LOAD_FILE) (
37 VOID *Pe32Data,
38 EFI_PHYSICAL_ADDRESS *ImageAddress,
39 UINT64 *ImageSize,
40 EFI_PHYSICAL_ADDRESS *EntryPoint
41 );
42
43 /*++
44
45 Routine Description:
46 Loads and relocates a PE/COFF image into memory.
47
48 Arguments:
49 Pe32Data - The base address of the PE/COFF file that is to be loaded and relocated
50 ImageAddress - The base address of the relocated PE/COFF image
51 ImageSize - The size of the relocated PE/COFF image
52 EntryPoint - The entry point of the relocated PE/COFF image
53
54 Returns:
55 EFI_SUCCESS - The file was loaded and relocated
56 EFI_OUT_OF_RESOURCES - There was not enough memory to load and relocate the PE/COFF file
57
58 --*/
59 typedef struct {
60 UNIX_PEI_LOAD_FILE PeiLoadFileService;
61 } UNIX_PEI_LOAD_FILE_PPI;
62
63 extern EFI_GUID gUnixPeiLoadFilePpiGuid;
64
65 #endif