diff options
-rw-r--r-- | MdeModulePkg/Universal/Metronome/Metronome.c | 19 | ||||
-rw-r--r-- | MdeModulePkg/Universal/Metronome/Metronome.h | 56 |
2 files changed, 59 insertions, 16 deletions
diff --git a/MdeModulePkg/Universal/Metronome/Metronome.c b/MdeModulePkg/Universal/Metronome/Metronome.c index 9ce6c9c..ce15e3a 100644 --- a/MdeModulePkg/Universal/Metronome/Metronome.c +++ b/MdeModulePkg/Universal/Metronome/Metronome.c @@ -22,22 +22,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. **/
-#include <PiDxe.h>
-#include <Protocol/Metronome.h>
-#include <Library/UefiBootServicesTableLib.h>
-#include <Library/TimerLib.h>
-#include <Library/DebugLib.h>
-
-//
-// Function Prototypes
-//
-EFI_STATUS
-EFIAPI
-WaitForTick (
- IN EFI_METRONOME_ARCH_PROTOCOL *This,
- IN UINT32 TickNumber
- );
-
//
// Handle for the Metronome Architectural Protocol instance produced by this driver
//
@@ -52,6 +36,9 @@ EFI_METRONOME_ARCH_PROTOCOL mMetronome = { };
/**
+ Waits for the specified number of ticks.
+
+ This function implements EFI_METRONOME_ARCH_PROTOCOL.WaitForTick().
The WaitForTick() function waits for the number of ticks specified by
TickNumber from a known time source in the platform. If TickNumber of
ticks are detected, then EFI_SUCCESS is returned. The actual time passed
diff --git a/MdeModulePkg/Universal/Metronome/Metronome.h b/MdeModulePkg/Universal/Metronome/Metronome.h new file mode 100644 index 0000000..f199f53 --- /dev/null +++ b/MdeModulePkg/Universal/Metronome/Metronome.h @@ -0,0 +1,56 @@ +/** @file
+ Include file of Metronome driver.
+
+Copyright (c) 2008, Intel Corporation. <BR>
+All rights reserved. This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+**/
+
+#ifndef _METRONOME_H_
+#define _METRONOME_H_
+
+#include <PiDxe.h>
+#include <Protocol/Metronome.h>
+#include <Library/UefiBootServicesTableLib.h>
+#include <Library/TimerLib.h>
+#include <Library/DebugLib.h>
+
+/**
+ Waits for the specified number of ticks.
+
+ This function implements EFI_METRONOME_ARCH_PROTOCOL.WaitForTick().
+ The WaitForTick() function waits for the number of ticks specified by
+ TickNumber from a known time source in the platform. If TickNumber of
+ ticks are detected, then EFI_SUCCESS is returned. The actual time passed
+ between entry of this function and the first tick is between 0 and
+ TickPeriod 100 nS units. If you want to guarantee that at least TickPeriod
+ time has elapsed, wait for two ticks. This function waits for a hardware
+ event to determine when a tick occurs. It is possible for interrupt
+ processing, or exception processing to interrupt the execution of the
+ WaitForTick() function. Depending on the hardware source for the ticks, it
+ is possible for a tick to be missed. This function cannot guarantee that
+ ticks will not be missed. If a timeout occurs waiting for the specified
+ number of ticks, then EFI_TIMEOUT is returned.
+
+ @param This The EFI_METRONOME_ARCH_PROTOCOL instance.
+ @param TickNumber Number of ticks to wait.
+
+ @retval EFI_SUCCESS The wait for the number of ticks specified by TickNumber
+ succeeded.
+ @retval EFI_TIMEOUT A timeout occurred waiting for the specified number of ticks.
+
+**/
+EFI_STATUS
+EFIAPI
+WaitForTick (
+ IN EFI_METRONOME_ARCH_PROTOCOL *This,
+ IN UINT32 TickNumber
+ );
+
+#endif
|