Important: The information in this document is obsolete and should not be used for new development.
SCSIBusInquiry
You use theSCSIBusInquiry
function to get information about a SCSI bus.
OSErr SCSIAction(SCSIBusInquiryPB *scsiPB);
scsiPB
- A pointer to a SCSI bus inquiry parameter block, which is described on page 4-28.
--> scsiPBLength UInt16 The size of the parameter block. --> scsiFunctionCode UInt8 The SCSIBusInquiry
function selector code (0x03).<-- scsiResult OSErr The returned result code. --> scsiDevice DeviceIdent The device identification record. Only the bus number is required. --> scsiCompletion CallbackProc Unused. Must be nil
.<-- scsiEngineCount UInt16 The number of HBA engines. <-- scsiMaxTransferType UInt16 The number of data transfer types available on the HBA. <-- scsiDataTypes UInt32 The data types supported. <-- scsiIOpbSize UInt16 The minimum parameter block size for this SIM. <-- scsiMaxIOpbSize UInt16 The largest parameter block size currently registered. <-- scsiFeatureFlags UInt32 Features of the SIM/HBA. <-- scsiVersionNumber UInt8 The version of the SIM/HBA <-- scsiHBAInquiry UInt8 Features of the SIM/HBA. <-- scsiSIMPrivatesPtr UInt32 A pointer to the SIM's storage. <-- scsiSIMPrivatesSize UInt32 The size of the SIM's storage. <-- scsiHiBusID UInt8 The highest registered bus number. <-- scsiInitiatorID UInt8 SCSI ID of the HBA. <-- scsiFlagsSupported UInt32 Bit mask of supported scsiFlags
.<-- scsiIOFlagsSupported UInt16 Bit mask of supported scsiIOFlags
.<-- scsiWeirdStuff UInt16 Additional flags. <-- scsiMaxTarget UInt16 The highest SCSI ID value supported by the HBA. <-- scsiMaxLUN UInt16 The highest logical unit number supported by the HBA. <-- scsiSIMVendor SInt8[16] SIM vendor string. <-- scsiHBAVendor SInt8[16] HBA vendor string. <-- scsiControllerFamily SInt8[16] Controller family string. <-- scsiControllerType SInt8[16] Controller type string. <-- scsiXPTversion SInt8[4] XPT version string. <-- scsiSIMversion SInt8[4] SIM version string. <-- scsiHBAversion SInt8[4] HBA version string. <-- scsiHBAslotType UInt8 The slot type of the HBA. <-- scsiHBAslotNumber UInt8 The slot number of the HBA. <-- scsiSIMsRsrcID UInt16 The sResource ID of the SIM. <-- scsiAdditionalLength UInt16 The additional size of this parameter block, if any. DESCRIPTION
TheSCSIBusInquiry
function returns information about the SIM and HBA for a bus. This function is typically used to find the minimum size of the SCSI I/O parameter block for a particular SIM. You can also use this function to determine whether a bus supports various optional features such as synchronous or wide transfer modes. Because this function is always executed synchronously, thescsiCompletion
field must be set tonil
.To find all buses, first request information about the XPT by setting the bus number in the
scsiDevice
field to 0xFF, then use the value returned in thescsiHiBusID
field to set the limits of the search.RESULT CODES