2 Entry point to a DXE Boot Services Driver
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
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.
15 #ifndef __MODULE_ENTRY_POINT_H__
16 #define __MODULE_ENTRY_POINT_H__
19 // Declare the EFI/UEFI Specification Revision to which this driver is implemented
21 extern const UINT32 _gUefiDriverRevision
;
24 // Declare the number of entry points in the image.
26 extern const UINT8 _gDriverEntryPointCount
;
29 // Declare the number of unload handler in the image.
31 extern const UINT8 _gDriverUnloadImageCount
;
34 // Declare the arrary of Boot Sevice Exit Event callbacks .
36 extern const EFI_EVENT_NOTIFY _gDriverExitBootServicesEvent
[];
39 // Declare the arrary of Virtual Address Change Event callbacks .
41 extern const EFI_EVENT_NOTIFY _gDriverSetVirtualAddressMapEvent
[];
44 Enrty point to DXE SMM Driver.
46 @param ImageHandle ImageHandle of the loaded driver.
47 @param SystemTable Pointer to the EFI System Table.
49 @retval EFI_SUCCESS One or more of the drivers returned a success code.
50 @retval !EFI_SUCESS The return status from the last driver entry point in the list.
56 IN EFI_HANDLE ImageHandle
,
57 IN EFI_SYSTEM_TABLE
*SystemTable
62 Enrty point wrapper of DXE Driver.
64 @param ImageHandle ImageHandle of the loaded driver.
65 @param SystemTable Pointer to the EFI System Table.
67 @retval EFI_SUCCESS One or more of the drivers returned a success code.
68 @retval !EFI_SUCESS The return status from the last driver entry point in the list.
74 IN EFI_HANDLE ImageHandle
,
75 IN EFI_SYSTEM_TABLE
*SystemTable
80 Computes the cummulative return status for the driver entry point and perform
81 a long jump back into DriverEntryPoint().
83 @param Status Status returned by the driver that is exiting.
94 Call constructs for all libraries. Automatics Generated by tool.
96 @param ImageHandle ImageHandle of the loaded driver.
97 @param SystemTable Pointer to the EFI System Table.
102 ProcessLibraryConstructorList (
103 IN EFI_HANDLE ImageHandle
,
104 IN EFI_SYSTEM_TABLE
*SystemTable
109 Call destructors for all libraries. Automatics Generated by tool.
111 @param ImageHandle ImageHandle of the loaded driver.
112 @param SystemTable Pointer to the EFI System Table.
117 ProcessLibraryDestructorList (
118 IN EFI_HANDLE ImageHandle
,
119 IN EFI_SYSTEM_TABLE
*SystemTable
123 Call the list of driver entry points. Automatics Generated by tool.
125 @param ImageHandle ImageHandle of the loaded driver.
126 @param SystemTable Pointer to the EFI System Table.
128 @return Status returned by entry points of drivers.
134 ProcessModuleEntryPointList (
135 IN EFI_HANDLE ImageHandle
,
136 IN EFI_SYSTEM_TABLE
*SystemTable
141 Call the unload handlers for all the modules. Automatics Generated by tool.
143 @param ImageHandle ImageHandle of the loaded driver.
145 @return Status returned by unload handlers of drivers.
150 ProcessModuleUnloadList (
151 IN EFI_HANDLE ImageHandle