Important: The information in this document is obsolete and should not be used for new development.
SCSIResetBus
You use theSCSIResetBus
function to reset a SCSI bus.
OSErr SCSIAction(SCSI_PB *scsiPB);
scsiPB
- A pointer to a SCSI Manager parameter block.
--> scsiPBLength UInt16 The size of the parameter block. --> scsiFunctionCode UInt8 The SCSIResetBus
function selector code (0x11).<-- scsiResult OSErr The returned result code. --> scsiDevice DeviceIdent The device identification record. Only the bus number is required. --> scsiCompletion CallbackProc A pointer to a completion routine. If set to nil
, the function is executed synchronously.--> scsiDriverStorage UInt8 * Optional pointer to the device driver's private storage. DESCRIPTION
TheSCSIResetBus
function directs the HBA to assert the SCSI bus reset signal, causing all devices on the bus to clear pending I/O and forcing the bus into the bus free phase. In addition, the SIM calls the completion routines for all requests that were already delivered to devices. The appropriate LUN queue is frozen for each of the requests that were reset, unless the scsiSIMQNoFreeze flag is set.SPECIAL CONSIDERATIONS
TheSCSIResetBus
function interrupts SCSI communications and can cause data loss. You should use this function only to restore operation in the event that a device refuses to release the bus. You can use theSCSIResetDevice
function to reset a single device when the SCSI bus is operational and the device is still responding to selection.RESULT CODES