The timer notify function should be called with timer period, not the value read from timer register.
Signed-off-by: Tuan Phan <tp...@ventanamicro.com> --- UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c b/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c index 358057e7c6a4..30e48061cd06 100644 --- a/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c +++ b/UefiCpuPkg/CpuTimerDxeRiscV64/Timer.c @@ -9,6 +9,7 @@ #include <Library/BaseLib.h> #include <Library/BaseRiscVSbiLib.h> +#include <Library/UefiLib.h> #include "Timer.h" // @@ -71,7 +72,12 @@ TimerInterruptHandler ( // time to increment slower. So when we take an interrupt, // account for the actual time passed. // - mTimerNotifyFunction (PeriodStart - mLastPeriodStart); + mTimerNotifyFunction ( + DivU64x32 ( + EFI_TIMER_PERIOD_SECONDS (PeriodStart - mLastPeriodStart), + PcdGet64 (PcdCpuCoreCrystalClockFrequency) + ) + ); } if (mTimerPeriod == 0) { -- 2.25.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#106452): https://edk2.groups.io/g/devel/message/106452 Mute This Topic: https://groups.io/mt/99822131/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-