Implement QueryPerformanceCounter() for Emulator on both Unix and Windows. Signed-off-by: Derek Lin <derek.l...@hpe.com> Signed-off-by: Kitty Chen <kitty.c...@hpe.com> --- EmulatorPkg/Unix/Host/EmuThunk.c | 6 ++++-- EmulatorPkg/Win/Host/WinThunk.c | 7 ++++++- 2 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/EmulatorPkg/Unix/Host/EmuThunk.c b/EmulatorPkg/Unix/Host/EmuThunk.c index 1e9dc99187..4fd7b3d093 100644 --- a/EmulatorPkg/Unix/Host/EmuThunk.c +++ b/EmulatorPkg/Unix/Host/EmuThunk.c @@ -274,8 +274,10 @@ QueryPerformanceCounter ( return (Start * sTimebaseInfo.numer) / sTimebaseInfo.denom; #else - // Need to figure out what to do for Linux? - return 0; + int status; + struct timespec time; + status = clock_gettime(CLOCK_REALTIME, &time); + return time.tv_nsec; #endif } diff --git a/EmulatorPkg/Win/Host/WinThunk.c b/EmulatorPkg/Win/Host/WinThunk.c index a77be2a64b..a1f8870e27 100644 --- a/EmulatorPkg/Win/Host/WinThunk.c +++ b/EmulatorPkg/Win/Host/WinThunk.c @@ -447,7 +447,12 @@ SecQueryPerformanceCounter ( VOID ) { - return 0; + UINT64 PerformanceCount; + + PerformanceCount = 0; + QueryPerformanceCounter ((LARGE_INTEGER *) &PerformanceCount); + + return PerformanceCount; } -- 2.20.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52324): https://edk2.groups.io/g/devel/message/52324 Mute This Topic: https://groups.io/mt/68782312/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-