Microsoft Windows CE 3.0  

NdisMSynchronizeWithInterrupt

Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

This function synchronizes execution of a Miniport-supplied function with the MiniportISRor the MiniportDisableInterruptfunction.

BOOLEAN NdisMSynchronizeWithInterrupt(
IN PNDIS_MINIPORT_INTERRUPT
Interrupt
,
IN PVOID
SynchronizeFunction
,
IN PVOID
SynchronizeContext
);

Parameters

Interrupt
Pointer to the caller-supplied storage for the interrupt object initialized with the NdisMRegisterInterruptfunction.
SynchronizeFunction
Specifies the entry point of the driver's MiniportSynchronizeISRfunction.
SynchronizeContext
Pointer to a miniport-determined context area to be passed to the MiniportSynchronizeISRfunction when it is called.

Return Values

Returns the Boolean value returned by MiniportSynchronizeISR.

Remarks

The value returned by MiniportSynchronizeISRis also returned by this function. This propagated value can be used to provide a status to the caller.

Any miniport function that shares resources with any other driver function that runs at DIRQL must use this function to synchronize its access to those resources. The MiniportSynchronizeISRfunction also runs at DIRQL, and the shared resources are protected by a system-allocated spin lock on multiprocessor platforms. Thus, the shared resources are protected from simultaneous access by MiniportISRor MiniportDisableInterruptand the caller whenever the driver is running on a multiprocessor platform.

This function releases the system spin lock and restores the original IRQL of its caller before it returns control.

A driver that calls this function runs at IRQL <= DIRQL.

Requirements

Runs on Versions Defined in Include Link to
Windows CE OS 2.0 and later Ndis.h    
Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

NdisMDeregisterInterrupt, NdisMRegisterInterrupt



 Last updated on Tuesday, July 13, 2004

© 2004 Microsoft Corporation. All rights reserved.