ArmPlatformPkg/PL031RealTimeClockLib: remove local copy of gRT pointer

Since the only reason for keeping a local copy mRT of the gRT pointer
is to be able to call GetVariable/SetVariable at runtime, use the
UefiRuntimeLib helpers instead, so that we can drop mRT altogether.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
This commit is contained in:
Ard Biesheuvel 2016-04-13 10:07:55 +02:00
parent 3ad72779aa
commit fca117fd3f
1 changed files with 6 additions and 10 deletions

View File

@ -43,7 +43,6 @@ STATIC CONST CHAR16 mDaylightVariableName[] = L"PL031RtcDaylight";
STATIC BOOLEAN mPL031Initialized = FALSE;
STATIC EFI_EVENT mRtcVirtualAddrChangeEvent;
STATIC UINTN mPL031RtcBase;
STATIC EFI_RUNTIME_SERVICES *mRT;
EFI_STATUS
IdentifyPL031 (
@ -293,7 +292,7 @@ LibGetTime (
// Get the current time zone information from non-volatile storage
Size = sizeof (TimeZone);
Status = mRT->GetVariable (
Status = EfiGetVariable (
(CHAR16 *)mTimeZoneVariableName,
&gEfiCallerIdGuid,
NULL,
@ -311,7 +310,7 @@ LibGetTime (
// The time zone variable does not exist in non-volatile storage, so create it.
Time->TimeZone = EFI_UNSPECIFIED_TIMEZONE;
// Store it
Status = mRT->SetVariable (
Status = EfiSetVariable (
(CHAR16 *)mTimeZoneVariableName,
&gEfiCallerIdGuid,
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
@ -345,7 +344,7 @@ LibGetTime (
// Get the current daylight information from non-volatile storage
Size = sizeof (Daylight);
Status = mRT->GetVariable (
Status = EfiGetVariable (
(CHAR16 *)mDaylightVariableName,
&gEfiCallerIdGuid,
NULL,
@ -363,7 +362,7 @@ LibGetTime (
// The daylight variable does not exist in non-volatile storage, so create it.
Time->Daylight = 0;
// Store it
Status = mRT->SetVariable (
Status = EfiSetVariable (
(CHAR16 *)mDaylightVariableName,
&gEfiCallerIdGuid,
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
@ -497,7 +496,7 @@ LibSetTime (
// Do this after having set the RTC.
// Save the current time zone information into non-volatile storage
Status = mRT->SetVariable (
Status = EfiSetVariable (
(CHAR16 *)mTimeZoneVariableName,
&gEfiCallerIdGuid,
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
@ -515,7 +514,7 @@ LibSetTime (
}
// Save the current daylight information into non-volatile storage
Status = mRT->SetVariable (
Status = EfiSetVariable (
(CHAR16 *)mDaylightVariableName,
&gEfiCallerIdGuid,
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
@ -608,7 +607,6 @@ LibRtcVirtualNotifyEvent (
// runtime calls will be made in virtual mode.
//
EfiConvertPointer (0x0, (VOID**)&mPL031RtcBase);
EfiConvertPointer (0x0, (VOID**)&mRT);
return;
}
@ -650,8 +648,6 @@ LibRtcInitialize (
return Status;
}
mRT = gRT;
// Install the protocol
Handle = NULL;
Status = gBS->InstallMultipleProtocolInterfaces (