]>
Commit | Line | Data |
---|---|---|
b4b6c8de | 1 | /** @file\r |
182b1d16 | 2 | This Library uses Framework RecoveryModule PPI to do system recovery.\r |
4fb31c2c | 3 | \r |
7db60f82 | 4 | This library instance is no longer used and module using this library\r |
5 | class should update to directly locate EFI_PEI_RECOVERY_MODULE_PPI defined\r | |
0a6f4824 | 6 | in PI 1.2 specification.\r |
7db60f82 | 7 | \r |
0a6f4824 | 8 | Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r |
c0a00b14 | 9 | SPDX-License-Identifier: BSD-2-Clause-Patent\r |
4fb31c2c | 10 | \r |
11 | **/\r | |
7db60f82 | 12 | #include <PiPei.h>\r |
4fb31c2c | 13 | #include <Library/PeiServicesLib.h>\r |
14 | #include <Library/PeiServicesTablePointerLib.h>\r | |
15 | #include <Library/DebugLib.h>\r | |
16 | \r | |
17 | #include <Ppi/RecoveryModule.h>\r | |
18 | \r | |
19 | /**\r | |
20 | Calling this function causes the system do recovery.\r | |
0a6f4824 | 21 | \r |
4fb31c2c | 22 | @retval EFI_SUCESS Sucess to do recovery.\r |
23 | @retval Others Fail to do recovery.\r | |
24 | **/\r | |
25 | EFI_STATUS\r | |
26 | EFIAPI\r | |
e8da1266 | 27 | PeiRecoverFirmware (\r |
4fb31c2c | 28 | VOID\r |
29 | )\r | |
30 | {\r | |
31 | EFI_STATUS Status;\r | |
32 | EFI_PEI_RECOVERY_MODULE_PPI *PeiRecovery;\r | |
0a6f4824 | 33 | \r |
4fb31c2c | 34 | Status = PeiServicesLocatePpi (\r |
35 | &gEfiPeiRecoveryModulePpiGuid,\r | |
36 | 0,\r | |
37 | NULL,\r | |
38 | (VOID **)&PeiRecovery\r | |
39 | );\r | |
40 | ASSERT_EFI_ERROR (Status);\r | |
41 | \r | |
1b641bb8 | 42 | return PeiRecovery->LoadRecoveryCapsule ((EFI_PEI_SERVICES **) GetPeiServicesTablePointer(), PeiRecovery);\r |
4fb31c2c | 43 | }\r |
44 | \r |