]> git.proxmox.com Git - mirror_edk2.git/blob - IntelFrameworkPkg/Include/Ppi/RecoveryModule.h
Add the following PI 1.2 PPIs to the MdePkg
[mirror_edk2.git] / IntelFrameworkPkg / Include / Ppi / RecoveryModule.h
1 /** @file
2 This file declares Recovery Module PPI.
3 This PPI is used to find and load the recovery files.
4
5 Copyright (c) 2007 - 2009, Intel Corporation
6 All rights reserved. This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php
10
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13
14 @par Revision Reference:
15 This PPI is defined in Framework of EFI Recovery Spec.
16 Version 0.9
17
18 **/
19
20 #ifndef __PEI_RECOVERY_MODULE_PPI_H__
21 #define __PEI_RECOVERY_MODULE_PPI_H__
22
23 ///
24 /// Inconsistent with specification here:
25 /// GUID marco name has been changed to the consistent PPI GUID macro name.
26 ///
27 #define EFI_PEI_RECOVERY_MODULE_PPI_GUID \
28 { \
29 0xFB6D9542, 0x612D, 0x4f45, {0x87, 0x2F, 0x5C, 0xFF, 0x52, 0xE9, 0x3D, 0xCF } \
30 }
31
32 typedef struct _EFI_PEI_RECOVERY_MODULE_PPI EFI_PEI_RECOVERY_MODULE_PPI;
33
34 /**
35 Loads a DXE capsule from some media into memory and updates the HOB table
36 with the DXE firmware volume information.
37
38 @param PeiServices General-purpose services that are available to every PEIM.
39 @param This Indicates the EFI_PEI_RECOVERY_MODULE_PPI instance.
40
41 @retval EFI_SUCCESS The capsule was loaded correctly.
42 @retval EFI_DEVICE_ERROR A device error occurred.
43 @retval EFI_NOT_FOUND A recovery DXE capsule cannot be found.
44
45 **/
46 typedef
47 EFI_STATUS
48 (EFIAPI *EFI_PEI_LOAD_RECOVERY_CAPSULE)(
49 IN EFI_PEI_SERVICES **PeiServices,
50 IN EFI_PEI_RECOVERY_MODULE_PPI *This
51 );
52
53 /**
54 Finds and loads the recovery files.
55 **/
56 struct _EFI_PEI_RECOVERY_MODULE_PPI {
57 EFI_PEI_LOAD_RECOVERY_CAPSULE LoadRecoveryCapsule; ///< Loads a DXE binary capsule into memory.
58 };
59
60 extern EFI_GUID gEfiPeiRecoveryModulePpiGuid;
61
62 #endif