]> git.proxmox.com Git - mirror_edk2.git/blame - EmulatorPkg/TimerDxe/Timer.h
EmulatorPkg: Apply uncrustify changes
[mirror_edk2.git] / EmulatorPkg / TimerDxe / Timer.h
CommitLineData
949f388f 1/*++ @file\r
2 Emu Emulation Architectural Protocol Driver as defined in UEFI/PI.\r
3 This Timer module uses an UNIX Thread to simulate the timer-tick driven\r
4 timer service.\r
5\r
6Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>\r
7Portions copyright (c) 2010 - 2011, Apple Inc. All rights reserved.\r
e3ba31da 8SPDX-License-Identifier: BSD-2-Clause-Patent\r
949f388f 9\r
10\r
11**/\r
12\r
13#ifndef _TIMER_H_\r
14#define _TIMER_H_\r
15\r
949f388f 16//\r
17// Legal timer value range in 100 ns units\r
18//\r
a550d468
MK
19#define TIMER_MINIMUM_VALUE 0\r
20#define TIMER_MAXIMUM_VALUE (0x100000000ULL - 1)\r
949f388f 21\r
22//\r
23// Default timer value in 100 ns units (50 ms)\r
24//\r
a550d468 25#define DEFAULT_TIMER_TICK_DURATION 500000\r
949f388f 26\r
27//\r
28// Function Prototypes\r
29//\r
30EFI_STATUS\r
31EFIAPI\r
32EmuTimerDriverInitialize (\r
33 IN EFI_HANDLE ImageHandle,\r
34 IN EFI_SYSTEM_TABLE *SystemTable\r
35 );\r
36\r
37EFI_STATUS\r
38EFIAPI\r
39EmuTimerDriverRegisterHandler (\r
40 IN EFI_TIMER_ARCH_PROTOCOL *This,\r
41 IN EFI_TIMER_NOTIFY NotifyFunction\r
42 );\r
43\r
44EFI_STATUS\r
45EFIAPI\r
46EmuTimerDriverSetTimerPeriod (\r
47 IN EFI_TIMER_ARCH_PROTOCOL *This,\r
48 IN UINT64 TimerPeriod\r
49 );\r
50\r
51EFI_STATUS\r
52EFIAPI\r
53EmuTimerDriverGetTimerPeriod (\r
a550d468
MK
54 IN EFI_TIMER_ARCH_PROTOCOL *This,\r
55 OUT UINT64 *TimerPeriod\r
949f388f 56 );\r
57\r
58EFI_STATUS\r
59EFIAPI\r
60EmuTimerDriverGenerateSoftInterrupt (\r
61 IN EFI_TIMER_ARCH_PROTOCOL *This\r
62 );\r
63\r
64#endif\r