3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 NT Emulation Architectural Protocol Driver as defined in Tiano.
19 This Timer module uses an NT Thread to simulate the timer-tick driven
30 #include <Protocol/Timer.h>
31 #include <Protocol/Cpu.h>
32 #include <Library/DebugLib.h>
33 #include <Library/UefiDriverEntryPoint.h>
34 #include <Library/WinNtLib.h>
35 #include <Library/UefiBootServicesTableLib.h>
39 // Legal timer value range in 100 ns units
41 #define TIMER_MINIMUM_VALUE 0
42 #define TIMER_MAXIMUM_VALUE (0x100000000 - 1)
45 // Default timer value in 100 ns units (10 ms)
47 #define DEFAULT_TIMER_TICK_DURATION 100000
50 // Function Prototypes
54 WinNtTimerDriverInitialize (
55 IN EFI_HANDLE ImageHandle
,
56 IN EFI_SYSTEM_TABLE
*SystemTable
62 TODO: Add function description
66 ImageHandle - TODO: add argument description
67 SystemTable - TODO: add argument description
71 TODO: add return values
78 WinNtTimerDriverRegisterHandler (
79 IN EFI_TIMER_ARCH_PROTOCOL
*This
,
80 IN EFI_TIMER_NOTIFY NotifyFunction
86 TODO: Add function description
90 This - TODO: add argument description
91 NotifyFunction - TODO: add argument description
95 TODO: add return values
102 WinNtTimerDriverSetTimerPeriod (
103 IN EFI_TIMER_ARCH_PROTOCOL
*This
,
104 IN UINT64 TimerPeriod
110 TODO: Add function description
114 This - TODO: add argument description
115 TimerPeriod - TODO: add argument description
119 TODO: add return values
126 WinNtTimerDriverGetTimerPeriod (
127 IN EFI_TIMER_ARCH_PROTOCOL
*This
,
128 OUT UINT64
*TimerPeriod
134 TODO: Add function description
138 This - TODO: add argument description
139 TimerPeriod - TODO: add argument description
143 TODO: add return values
150 WinNtTimerDriverGenerateSoftInterrupt (
151 IN EFI_TIMER_ARCH_PROTOCOL
*This
157 TODO: Add function description
161 This - TODO: add argument description
165 TODO: add return values