Lines Matching refs:Timer
2 Emu Emulation Timer Architectural Protocol Driver as defined in DXE CIS
4 This Timer module uses an Emu Thread to simulate the timer-tick driven
5 timer service. In the future, the Thread creation should possibly be
22 #include <Protocol/Timer.h>
24 #include "Timer.h"
39 // The Timer Architectural Protocol that this driver produces
49 // The notification function to call on every timer interrupt
54 // The current period of the timer interrupt
96 the timer interrupt fires. It also passes the amount of time since the last
99 returned. If the CPU does not support registering a timer interrupt handler,
104 register the NotifyFunction with the timer interrupt, then EFI_DEVICE_ERROR
111 NotifyFunction - The function to call when a timer interrupt fires. This
113 register a handler for the timer interrupt, so it can know
115 signal timer based events. NULL will unregister the handler.
119 EFI_SUCCESS - The timer handler was registered.
121 EFI_UNSUPPORTED - The platform does not support timer interrupts.
129 EFI_DEVICE_ERROR - The timer handler could not be registered.
145 /* Disable timer. */
148 /* Enable Timer. */
166 This function adjusts the period of timer interrupts to the value specified
167 by TimerPeriod. If the timer period is updated, then the selected timer
169 the timer hardware is not programmable, then EFI_UNSUPPORTED is returned.
170 If an error occurs while attempting to update the timer period, then the
171 timer hardware will be put back in its state prior to this call, and
172 EFI_DEVICE_ERROR is returned. If TimerPeriod is 0, then the timer interrupt
174 Instead, it must either turn off the timer hardware, or it must adjust the
175 interrupt controller so that a CPU interrupt is not generated when the timer
182 TimerPeriod - The rate to program the timer interrupt in 100 nS units. If
183 the timer hardware is not programmable, then EFI_UNSUPPORTED is
184 returned. If the timer is programmable, then the timer period
185 will be rounded up to the nearest timer period that is supported
186 by the timer hardware. If TimerPeriod is set to 0, then the
187 timer interrupts will be disabled.
191 EFI_SUCCESS - The timer period was changed.
193 EFI_UNSUPPORTED - The platform cannot change the period of the timer interrupt.
195 EFI_DEVICE_ERROR - The timer period could not be changed due to a device error.
201 // If TimerPeriod is 0, then the timer thread should be canceled
202 // If the TimerPeriod is valid, then create and/or adjust the period of the timer thread
225 This function retrieves the period of timer interrupts in 100 ns units,
228 returned, then the timer is currently disabled.
234 TimerPeriod - A pointer to the timer period to retrieve in 100 ns units. If
235 0 is returned, then the timer is currently disabled.
239 EFI_SUCCESS - The timer period was returned in TimerPeriod.
263 This function generates a soft timer interrupt. If the platform does not support soft
264 timer interrupts, then EFI_UNSUPPORTED is returned. Otherwise, EFI_SUCCESS is returned.
266 service, then a soft timer interrupt will be generated. If the timer interrupt is
268 registered handler should not be able to distinguish a hardware-generated timer
269 interrupt from a software-generated timer interrupt.
277 EFI_SUCCESS - The soft timer interrupt was generated.
279 EFI_UNSUPPORTEDT - The platform does not support the generation of soft timer interrupts.
296 Initialize the Timer Architectural Protocol driver
306 EFI_SUCCESS - Timer Architectural Protocol created
318 // Make sure the Timer Architectural Protocol is not already installed in the system
329 // Start the timer thread at the default timer period
337 // Install the Timer Architectural Protocol onto a new handle