@@ -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 (
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> --- ArmPlatformPkg/Library/PL031RealTimeClockLib/PL031RealTimeClockLib.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) -- 2.5.0 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel