]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Include/Library/PeimEntryPoint.h
Comments have been synchronized with spec.
[mirror_edk2.git] / MdePkg / Include / Library / PeimEntryPoint.h
1 /** @file
2 Module entry point library for PEIM.
3
4 Copyright (c) 2006 - 2008 Intel Corporation<BR>
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef __MODULE_ENTRY_POINT_H__
16 #define __MODULE_ENTRY_POINT_H__
17
18 ///
19 /// Declare the EFI/UEFI Specification Revision to which this driver is implemented
20 ///
21 extern CONST UINT32 _gPeimRevision;
22
23
24 /**
25 Image entry point of Peim.
26
27 @param FileHandle Handle of the file being invoked.
28 Type EFI_PEI_FILE_HANDLE is defined in FfsFindNextFile().
29 @param PeiServices Describes the list of possible PEI Services.
30
31 @retval EFI_SUCCESS The PEIM executed normally.
32 @retval !EFI_SUCCESS The PEIM failed to execute normally.
33 **/
34 EFI_STATUS
35 EFIAPI
36 _ModuleEntryPoint (
37 IN EFI_PEI_FILE_HANDLE FileHandle,
38 IN CONST EFI_PEI_SERVICES **PeiServices
39 );
40
41
42 /**
43 Required by the EBC compiler and identical in functionality to _ModuleEntryPoint().
44
45 @param FileHandle Handle of the file being invoked.
46 Type EFI_PEI_FILE_HANDLE is defined in FfsFindNextFile().
47 @param PeiServices Describes the list of possible PEI Services.
48
49 @retval EFI_SUCCESS The PEIM executed normally.
50 @retval !EFI_SUCCESS The PEIM failed to execute normally.
51
52 **/
53 EFI_STATUS
54 EFIAPI
55 EfiMain (
56 IN EFI_PEI_FILE_HANDLE FileHandle,
57 IN CONST EFI_PEI_SERVICES **PeiServices
58 );
59
60
61 /**
62 Call constructs for all libraries. Automatics Generated by tool.
63
64 @param FileHandle Handle of the file being invoked.
65 Type EFI_PEI_FILE_HANDLE is defined in FfsFindNextFile().
66 @param PeiServices Describes the list of possible PEI Services.
67
68 **/
69 VOID
70 EFIAPI
71 ProcessLibraryConstructorList (
72 IN EFI_PEI_FILE_HANDLE FileHandle,
73 IN CONST EFI_PEI_SERVICES **PeiServices
74 );
75
76
77 /**
78 Call destructors for all libraries. Automatics Generated by tool.
79
80 @param FileHandle Handle of the file being invoked.
81 Type EFI_PEI_FILE_HANDLE is defined in FfsFindNextFile().
82 @param PeiServices Describes the list of possible PEI Services.
83
84 **/
85 VOID
86 EFIAPI
87 ProcessLibraryDestructorList (
88 IN EFI_PEI_FILE_HANDLE FileHandle,
89 IN CONST EFI_PEI_SERVICES **PeiServices
90 );
91
92
93 /**
94 Call the list of driver entry points. Automatics Generated by tool.
95
96 @param FileHandle Handle of the file being invoked.
97 Type EFI_PEI_FILE_HANDLE is defined in FfsFindNextFile().
98 @param PeiServices Describes the list of possible PEI Services.
99
100 @retval EFI_SUCCESS The PEIM executed normally.
101 @retval !EFI_SUCCESS The PEIM failed to execute normally.
102
103 **/
104 EFI_STATUS
105 EFIAPI
106 ProcessModuleEntryPointList (
107 IN EFI_PEI_FILE_HANDLE FileHandle,
108 IN CONST EFI_PEI_SERVICES **PeiServices
109 );
110
111 #endif