PcAtChipsetPkg: install RTC ARCH protocol even if RTC h/w is functioning incorrectly.

signed-off-by: erictian
reviewed-by: mdkinney

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12756 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
erictian 2011-11-22 06:11:16 +00:00
parent ace74c67ba
commit 6ff84d99d3
2 changed files with 6 additions and 3 deletions

View File

@ -141,6 +141,11 @@ PcRtcInit (
// //
Status = RtcWaitToUpdate (PcdGet32 (PcdRealTimeClockUpdateTimeout)); Status = RtcWaitToUpdate (PcdGet32 (PcdRealTimeClockUpdateTimeout));
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
//
// Set the variable with default value if the RTC is functioning incorrectly.
//
Global->SavedTimeZone = EFI_UNSPECIFIED_TIMEZONE;
Global->Daylight = 0;
if (!EfiAtRuntime ()) { if (!EfiAtRuntime ()) {
EfiReleaseLock (&Global->RtcLock); EfiReleaseLock (&Global->RtcLock);
} }

View File

@ -137,9 +137,7 @@ InitializePcRtc (
EfiInitializeLock (&mModuleGlobal.RtcLock, TPL_CALLBACK); EfiInitializeLock (&mModuleGlobal.RtcLock, TPL_CALLBACK);
Status = PcRtcInit (&mModuleGlobal); Status = PcRtcInit (&mModuleGlobal);
if (EFI_ERROR (Status)) { ASSERT_EFI_ERROR (Status);
return Status;
}
gRT->GetTime = PcRtcEfiGetTime; gRT->GetTime = PcRtcEfiGetTime;
gRT->SetTime = PcRtcEfiSetTime; gRT->SetTime = PcRtcEfiSetTime;