MdeModulePkg/ResetSystemRuntimeDxe: Remove DoS3 in warm reset

BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1462

Original logic is that checking the CapsuleUpdate variable
and do the EnterS3WithImmediateWake if the system require a
capsule update. The EnterS3WithImmediateWake is usually
implemented in Platform ResetSystemLib instance and it may
do some operation for capsule update. For now, thess preparations
of capsule are platform reset notify functions' duty. Most
platforms need flush cache to memory before warm reset during
capsule update and this operation is added to capsule flow.
So it is safe to remove it and do not affect the capsule update
function.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Zhichao Gao <zhichao.gao@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Hao Wu <hao.a.wu@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
Bret Barkelew 2019-03-22 11:07:18 +08:00 committed by Liming Gao
parent a89fd3a359
commit 9338e23017
1 changed files with 0 additions and 38 deletions

View File

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