The MiniportHandleInterrupt function is required if a driver’s NIC generates interrupts. MiniportHandleInterrupt does the deferred processing of all outstanding interrupt operations.
VOID
MiniportHandleInterrupt(
IN NDIS_HANDLE MiniportAdapterContext
);
Declared in Ndis.h. Include Ndis.h.
When a NIC generates an interrupt, a miniport’s MiniportISR or MiniportDisableInterrupt function dismisses the interrupt on the NIC, saves any necessary state about the operation, and returns control as quickly as possible, thereby deferring most interrupt-driven I/O operations to MiniportHandleInterrupt. MiniportHandleInterrupt does the deferred processing of all outstanding interrupt operations.
If the NIC shares an IRQ, MiniportHandleInterrupt is called only if the MiniportISR function returned QueueMiniportHandleInterrupt set to TRUE.
When MiniportHandleInterrupt is called, interrupts have typically been disabled on the NIC by the MiniportISR or MiniportDisableInterrupt function. Before it returns control, MiniportHandleInterrupt can reenable interrupts on the NIC.
For more information about operations that a miniport driver's MiniportHandleInterrupt function typically performs and for details on how to perform those operations, see DPC Handler.
A miniport driver can call NdisMDeregisterMiniport from its MiniportInitialize or MiniportHalt function to release resources that it allocated with NdisMRegisterInterrupt. After NdisMDeregisterMiniport returns, NDIS does not call a miniport driver's MiniportISR or MiniportHandleInterrupt functions.
MiniportHandleInterrupt runs at IRQL = DISPATCH_LEVEL.
MiniportDisableInterrupt, MiniportEnableInterrupt, MiniportInitialize, MiniportISR, MiniportSend, MiniportSendPackets, MiniportWanSend, NdisAdjustBufferLength, NdisAllocateBuffer, NdisAllocateMemoryWithTag, NdisAllocatePacket, NdisMArcIndicateReceive, NdisMDeregisterInterrupt, NdisMEthIndicateReceive, NdisMFddiIndicateReceive, NdisMIndicateReceivePacket, NdisMRegisterInterrupt, NdisMSynchronizeWithInterrupt, NdisMTrIndicateReceive, NdisMWanIndicateReceive, NDIS_PACKET, NDIS_PACKET_OOB_DATA