]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Omap35xxPkg: add GetTimeInNanoSecond implementation
authorLeif Lindholm <leif.lindholm@linaro.org>
Thu, 30 Nov 2017 13:55:59 +0000 (13:55 +0000)
committerLeif Lindholm <leif.lindholm@linaro.org>
Thu, 30 Nov 2017 14:32:30 +0000 (14:32 +0000)
Commit a63be426f8e3 ("ArmPlatformPkg: Store initial timer value") caused
BeagleBoard to stop building, due to Omap35xxTimerLib lacking an
implementation of GetTimeInNanoSecond (). So add one.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c

index 652c47b6f61a8b737bf9c75feb8636bae83d8918..a6f79ddd57f62ab07bf7f6059498bf2ab9355b9c 100644 (file)
@@ -131,3 +131,27 @@ GetPerformanceCounterProperties (
 \r
   return PcdGet64(PcdEmbeddedPerformanceCounterFrequencyInHz);\r
 }\r
+\r
+/**\r
+  Converts elapsed ticks of performance counter to time in nanoseconds.\r
+\r
+  This function converts the elapsed ticks of running performance counter to\r
+  time value in unit of nanoseconds.\r
+\r
+  @param  Ticks     The number of elapsed ticks of running performance counter.\r
+\r
+  @return The elapsed time in nanoseconds.\r
+\r
+**/\r
+UINT64\r
+EFIAPI\r
+GetTimeInNanoSecond (\r
+  IN      UINT64                     Ticks\r
+  )\r
+{\r
+  UINT32 Period;\r
+\r
+  Period = PcdGet32 (PcdEmbeddedPerformanceCounterPeriodInNanoseconds);\r
+\r
+  return (Ticks * Period);\r
+}\r