A.4.4 SCSI Miniport Driver�s HwScsiInitialize Routine

For each supported HBA found by the miniport driver, its HwScsiInitialize routine is called to set up the HBA�s registers and initial protocol state, if any.

If the HwScsiInitialize routine enables interrupts on the HBA, the miniport�s HwScsiInterrupt routine will be called to handle any interrupts the device generates during the initialization.

If initializing the HBA causes a bus reset, the HwScsiInitialize routine must call ScsiPortNotification with the NotificationType value ResetDetected.

When the HwScsiInitialize routine returns control, ScsiPortInitialize sends SCSIOP_INQUIRY requests to the miniport driver, collecting the SCSI-II INQUIRY data about the devices on each bus and storing it for subsequent examination by Windows NT SCSI class drivers, as described in Section A.1.3.1. Each request to scan a SCSI bus for the INQUIRY data is sent to the miniport�s HwScsiStartIo routine, described in Section A.4.5.