TianoCore EDK2 master
Loading...
Searching...
No Matches
Timer.h
1/*++ @file
2 Emu Emulation Architectural Protocol Driver as defined in UEFI/PI.
3 This Timer module uses an UNIX Thread to simulate the timer-tick driven
4 timer service.
5
6Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>
7Portions copyright (c) 2010 - 2011, Apple Inc. All rights reserved.
8SPDX-License-Identifier: BSD-2-Clause-Patent
9
10
11**/
12
13#ifndef _TIMER_H_
14#define _TIMER_H_
15
16//
17// Legal timer value range in 100 ns units
18//
19#define TIMER_MINIMUM_VALUE 0
20#define TIMER_MAXIMUM_VALUE (0x100000000ULL - 1)
21
22//
23// Default timer value in 100 ns units (50 ms)
24//
25#define DEFAULT_TIMER_TICK_DURATION 500000
26
27//
28// Function Prototypes
29//
31EFIAPI
32EmuTimerDriverInitialize (
33 IN EFI_HANDLE ImageHandle,
34 IN EFI_SYSTEM_TABLE *SystemTable
35 );
36
38EFIAPI
39EmuTimerDriverRegisterHandler (
42 );
43
45EFIAPI
46EmuTimerDriverSetTimerPeriod (
48 IN UINT64 TimerPeriod
49 );
50
52EFIAPI
53EmuTimerDriverGetTimerPeriod (
55 OUT UINT64 *TimerPeriod
56 );
57
59EFIAPI
60EmuTimerDriverGenerateSoftInterrupt (
62 );
63
64#endif
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
VOID(EFIAPI * EFI_TIMER_NOTIFY)(IN UINT64 Time)
Definition: Timer.h:41
VOID EFIAPI NotifyFunction(IN EFI_EVENT Event, IN VOID *Context)
Definition: ScsiBus.c:1492
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
VOID * EFI_HANDLE
Definition: UefiBaseType.h:33