[edk2] [PATCH v2] Omap35xxPkg: add GetTimeInNanoSecond implementation

Leif Lindholm posted 1 patch 6 years, 4 months ago
Failed in applying to current master (apply log)
Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
[edk2] [PATCH v2] Omap35xxPkg: add GetTimeInNanoSecond implementation
Posted by Leif Lindholm 6 years, 4 months ago
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>
---
 Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c b/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
index 652c47b6f6..a6f79ddd57 100644
--- a/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
+++ b/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
@@ -131,3 +131,27 @@ GetPerformanceCounterProperties (
 
   return PcdGet64(PcdEmbeddedPerformanceCounterFrequencyInHz);
 }
+
+/**
+  Converts elapsed ticks of performance counter to time in nanoseconds.
+
+  This function converts the elapsed ticks of running performance counter to
+  time value in unit of nanoseconds.
+
+  @param  Ticks     The number of elapsed ticks of running performance counter.
+
+  @return The elapsed time in nanoseconds.
+
+**/
+UINT64
+EFIAPI
+GetTimeInNanoSecond (
+  IN      UINT64                     Ticks
+  )
+{
+  UINT32 Period;
+
+  Period = PcdGet32 (PcdEmbeddedPerformanceCounterPeriodInNanoseconds);
+
+  return (Ticks * Period);
+}
-- 
2.11.0

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH v2] Omap35xxPkg: add GetTimeInNanoSecond implementation
Posted by Ard Biesheuvel 6 years, 4 months ago
On 30 November 2017 at 14:22, Leif Lindholm <leif.lindholm@linaro.org> wrote:
> 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>
> ---
>  Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c b/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
> index 652c47b6f6..a6f79ddd57 100644
> --- a/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
> +++ b/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
> @@ -131,3 +131,27 @@ GetPerformanceCounterProperties (
>
>    return PcdGet64(PcdEmbeddedPerformanceCounterFrequencyInHz);
>  }
> +
> +/**
> +  Converts elapsed ticks of performance counter to time in nanoseconds.
> +
> +  This function converts the elapsed ticks of running performance counter to
> +  time value in unit of nanoseconds.
> +
> +  @param  Ticks     The number of elapsed ticks of running performance counter.
> +
> +  @return The elapsed time in nanoseconds.
> +
> +**/
> +UINT64
> +EFIAPI
> +GetTimeInNanoSecond (
> +  IN      UINT64                     Ticks
> +  )
> +{
> +  UINT32 Period;
> +
> +  Period = PcdGet32 (PcdEmbeddedPerformanceCounterPeriodInNanoseconds);
> +
> +  return (Ticks * Period);
> +}
> --
> 2.11.0
>

Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH v2] Omap35xxPkg: add GetTimeInNanoSecond implementation
Posted by Leif Lindholm 6 years, 4 months ago
On Thu, Nov 30, 2017 at 02:24:24PM +0000, Ard Biesheuvel wrote:
> On 30 November 2017 at 14:22, Leif Lindholm <leif.lindholm@linaro.org> wrote:
> > 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>
> > ---
> >  Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c | 24 ++++++++++++++++++++++++
> >  1 file changed, 24 insertions(+)
> >
> > diff --git a/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c b/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
> > index 652c47b6f6..a6f79ddd57 100644
> > --- a/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
> > +++ b/Omap35xxPkg/Library/Omap35xxTimerLib/TimerLib.c
> > @@ -131,3 +131,27 @@ GetPerformanceCounterProperties (
> >
> >    return PcdGet64(PcdEmbeddedPerformanceCounterFrequencyInHz);
> >  }
> > +
> > +/**
> > +  Converts elapsed ticks of performance counter to time in nanoseconds.
> > +
> > +  This function converts the elapsed ticks of running performance counter to
> > +  time value in unit of nanoseconds.
> > +
> > +  @param  Ticks     The number of elapsed ticks of running performance counter.
> > +
> > +  @return The elapsed time in nanoseconds.
> > +
> > +**/
> > +UINT64
> > +EFIAPI
> > +GetTimeInNanoSecond (
> > +  IN      UINT64                     Ticks
> > +  )
> > +{
> > +  UINT32 Period;
> > +
> > +  Period = PcdGet32 (PcdEmbeddedPerformanceCounterPeriodInNanoseconds);
> > +
> > +  return (Ticks * Period);
> > +}
> > --
> > 2.11.0
> >
> 
> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

Thanks. These two BeagleBoard/Omap fixes pushed as
ef1b70ff08..f0d9d2b617.
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel