NdisInitializeTimer

VOID
   NdisInitializeTimer(
       IN OUT PNDIS_TIMER Timer,
       IN PNDIS_TIMER_FUNCTION TimerFunction,
       IN PVOID FunctionContext
       );

NdisInitializeTimer is called by the NIC driver to initialize an object that represents a timer.

Parameters

Timer

Points to the caller-supplied memory location of an NDIS_TIMER-type timer object.

TimerFunction

Points to the caller’s MacTimerFunction.

FunctionContext

Points to the context passed to MacTimerFunction.

Comments

A driver must call NdisInitializeTimer, usually during initialization, if it has a MacTimerFunction. After initialization of the timer object, the NIC driver calls NdisSetTimer to set the timer delay. When the timer expires, the MacTimerFunction is run.

If a driver calls NdisCancelTimer before the previously set interval expires, its MacTimerFunction does not run until the driver again calls NdisSetTimer.

If a driver calls NdisSetTimer twice in succession with overlapping intervals, its MacTimerFunction runs once when the interval given in the second call expires.

Callers of NdisInitializeTimer run at IRQL PASSIVE_LEVEL.

See Also

MacTimerFunction, NdisCancelTimer, NdisSetTimer