NdisMResetComplete

VOID
NdisMResetComplete(
IN
NDIS_HANDLE MiniportAdapterHandle,
IN NDIS_STATUS Status,
IN BOOLEAN AddressingReset
);

NdisMResetComplete returns the final status of a reset request for with the NIC driver previously returned NDIS_STATUS_PENDING.

Parameters

MiniportAdapterHandle

Specifies the handle originally input to MiniportInitialize.

Status

Specifies the final status of the reset operation just completed

AddressingReset

Specifies TRUE if the reset affected the miniport's network address information so that it needs to be reloaded.

Comments

If the MiniportReset function returns NDIS_STATUS_PENDING, the miniport must call NdisMResetComplete when it completes the reset operation. This call causes NDIS to forward the completion-status information to the protocol driver, if any, that called NdisReset to initiate the call to MiniportReset.

The NDIS library also can call the MiniportReset function, independent of any reset requests from protocol drivers bound to a particular NIC, when NDIS determines that a sent packet or a request that it submitted to the miniport has timed out.

Some NICs lose all multicast address, packet filter, or functional address information when a soft reset is issued. The driver of such a NIC sets AddressingReset to TRUE when it calls NdisMResetComplete, causing NDIS to call its MiniportSetInformation function to restore the addressing state.

An NDIS intermediate driver either sets AddressingReset to TRUE when it calls NdisMResetComplete or restores its own addressing information, such as medium-specific functional, multicast, and/or group addresses.

Callers of NdisMResetComplete run at IRQL DISPATCH_LEVEL.

See Also

MiniportInitialize, MiniportReset, MiniportSetInformation, NdisReset, ProtocolResetComplete