return Status;\r
}\r
\r
-/**\r
- Put the system into S3 power state.\r
-**/\r
-VOID\r
-DoS3 (\r
- VOID\r
- )\r
-{\r
- EnterS3WithImmediateWake ();\r
-\r
- //\r
- // Should not return\r
- //\r
- CpuDeadLoop ();\r
-}\r
-\r
/**\r
Resets the entire platform.\r
\r
IN VOID *ResetData OPTIONAL\r
)\r
{\r
- EFI_STATUS Status;\r
- UINTN Size;\r
- UINTN CapsuleDataPtr;\r
LIST_ENTRY *Link;\r
RESET_NOTIFY_ENTRY *Entry;\r
\r
switch (ResetType) {\r
case EfiResetWarm:\r
\r
- //\r
- //Check if there are pending capsules to process\r
- //\r
- Size = sizeof (CapsuleDataPtr);\r
- Status = EfiGetVariable (\r
- EFI_CAPSULE_VARIABLE_NAME,\r
- &gEfiCapsuleVendorGuid,\r
- NULL,\r
- &Size,\r
- (VOID *) &CapsuleDataPtr\r
- );\r
-\r
- if (Status == EFI_SUCCESS) {\r
- //\r
- //Process capsules across a system reset.\r
- //\r
- DoS3();\r
- }\r
-\r
ResetWarm ();\r
break;\r
\r