]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Include/Library/PeimEntryPoint.h
e5dcd4c12beefe028066eee7320a443c480b2b08
[mirror_edk2.git] / MdePkg / Include / Library / PeimEntryPoint.h
1 /** @file
2 Entry point to a PEIM
3
4 Copyright (c) 2006, 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 @return Status returned by entry points of Peims.
32
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 Wrapper of Peim image entry point.
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 @return Status returned by entry points of Peims.
50
51 **/
52 EFI_STATUS
53 EFIAPI
54 EfiMain (
55 IN EFI_PEI_FILE_HANDLE FileHandle,
56 IN CONST EFI_PEI_SERVICES **PeiServices
57 );
58
59
60 /**
61 Call constructs for all libraries. Automatics Generated by tool.
62
63 @param FileHandle Handle of the file being invoked.
64 Type EFI_PEI_FILE_HANDLE is defined in FfsFindNextFile().
65 @param PeiServices Describes the list of possible PEI Services.
66
67 **/
68 VOID
69 EFIAPI
70 ProcessLibraryConstructorList (
71 IN EFI_PEI_FILE_HANDLE FileHandle,
72 IN CONST EFI_PEI_SERVICES **PeiServices
73 );
74
75
76 /**
77 Call destructors for all libraries. Automatics Generated by tool.
78
79 @param FileHandle Handle of the file being invoked.
80 Type EFI_PEI_FILE_HANDLE is defined in FfsFindNextFile().
81 @param PeiServices Describes the list of possible PEI Services.
82
83 **/
84 VOID
85 EFIAPI
86 ProcessLibraryDestructorList (
87 IN EFI_PEI_FILE_HANDLE FileHandle,
88 IN CONST EFI_PEI_SERVICES **PeiServices
89 );
90
91
92 /**
93 Call the list of driver entry points. Automatics Generated by tool.
94
95 @param FileHandle Handle of the file being invoked.
96 Type EFI_PEI_FILE_HANDLE is defined in FfsFindNextFile().
97 @param PeiServices Describes the list of possible PEI Services.
98
99 @return Status returned by entry points of drivers.
100
101 **/
102 EFI_STATUS
103 EFIAPI
104 ProcessModuleEntryPointList (
105 IN EFI_PEI_FILE_HANDLE FileHandle,
106 IN CONST EFI_PEI_SERVICES **PeiServices
107 );
108
109 #endif