HwScsiEnableInterruptsCallback routine

HwScsiEnableInterruptsCallback is called after a miniport driver's HwScsiInterrupt routine disables interrupts on the HBA and calls ScsiPortNotification with the NotificationTypeCallEnableInterrupts. Miniport drivers of HBAs that require interrupt processing that takes more than 50 microseconds in the ISR should have a pair of HwScsi..InterruptsCallback routines.

Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future. Instead, we recommend using the Storport driver and Storport miniport driver models.


BOOLEAN HwScsiEnableInterruptsCallback(
  _In_ PVOID DeviceExtension


DeviceExtension [in]

Points to the miniport driver's per-HBA storage area.

Return value

HwScsiEnableInterruptsCallback returns TRUE.


All system interrupts are enabled when the HwScsiEnableInterruptsCallback routine gets control, except for interrupts from the HBA. Because the miniport driver's HwScsiInterrupt routine disables interrupts on the HBA before it calls ScsiPortNotification, the HwScsiEnableInterruptsCallback routine should be optimized to run as quickly as possible.

HwScsiEnableInterruptsCallback is responsible for completing the interrupt-driven I/O processing deferred by the HwScsiInterrupt routine, using the information it saved in the DeviceExtension. That is, HwScsiEnableInterruptsCallback completes the request that caused the interrupt to occur.

Then, HwScsiEnableInterruptsCallback calls ScsiPortNotification again with the NotificationTypeCallDisableInterrupts before it returns control.

For more information about the HwScsiEnableInterruptsCallback routine, see SCSI Miniport Driver's HwScsiEnableInterruptsCallback Routine.


Target platform



Miniport.h (include Scsi.h)

See also




Send comments about this topic to Microsoft