diff options
-rw-r--r-- | UefiCpuPkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf | 2 | ||||
-rw-r--r-- | UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c | 7 |
2 files changed, 5 insertions, 4 deletions
diff --git a/UefiCpuPkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf b/UefiCpuPkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf index f2a2cf1..812b674 100644 --- a/UefiCpuPkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf +++ b/UefiCpuPkg/CpuTimerDxeRiscV64/CpuTimerDxeRiscV64.inf @@ -32,6 +32,7 @@ CpuLib
UefiBootServicesTableLib
UefiDriverEntryPoint
+ TimerLib
[LibraryClasses.RISCV64]
RiscVSbiLib
@@ -42,7 +43,6 @@ [Pcd]
gEfiMdePkgTokenSpaceGuid.PcdRiscVFeatureOverride ## CONSUMES
- gUefiCpuPkgTokenSpaceGuid.PcdCpuCoreCrystalClockFrequency ## CONSUMES
[Protocols]
gEfiCpuArchProtocolGuid ## CONSUMES
diff --git a/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c b/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c index 216f48a..14780e4 100644 --- a/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c +++ b/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c @@ -10,6 +10,7 @@ #include <Library/BaseLib.h>
#include <Library/BaseRiscVSbiLib.h>
#include <Library/UefiLib.h>
+#include <Library/TimerLib.h>
#include "Timer.h"
//
@@ -114,7 +115,7 @@ TimerInterruptHandler ( mTimerNotifyFunction (
DivU64x32 (
EFI_TIMER_PERIOD_SECONDS (PeriodStart - mLastPeriodStart),
- PcdGet64 (PcdCpuCoreCrystalClockFrequency)
+ GetPerformanceCounterProperties (NULL, NULL)
)
);
}
@@ -129,7 +130,7 @@ TimerInterruptHandler ( PeriodStart += DivU64x32 (
MultU64x32 (
mTimerPeriod,
- PcdGet64 (PcdCpuCoreCrystalClockFrequency)
+ GetPerformanceCounterProperties (NULL, NULL)
),
1000000u
); // convert to tick
@@ -232,7 +233,7 @@ TimerDriverSetTimerPeriod ( PeriodStart += DivU64x32 (
MultU64x32 (
mTimerPeriod,
- PcdGet64 (PcdCpuCoreCrystalClockFrequency)
+ GetPerformanceCounterProperties (NULL, NULL)
),
1000000u
); // convert to tick
|