enum SCSIAdapterStatus { kSCSIAdapterStatusSuccess = 0, kSCSIAdapterStatusMsgReject, kSCSIAdapterStatusParityError, };
Defines the values of the adapterStatus field of the SCSIResults structure.
Name Description kSCSIAdapterStatusSuccess Request completed with no adapter reported errors. kSCSIAdapterStatusMsgReject Adapter received a msg reject from the target device. kSCSIAdapterStatusParityError Adapter detected, or target reported a parity error during the IOSCSICommand.
enum SCSICDBFlags { kCDBFNoDisconnect = 0x00000001, /* * Note: These flags are for IOSCSIController subclasses only */ kCDBFlagsDisableParity = 0x08000000, kCDBFlagsNoDisconnect = 0x10000000, kCDBFlagsNegotiateSDTR = 0x20000000, kCDBFlagsNegotiateWDTR = 0x40000000, };
Defines values for the cdbFlags field in the SCSICDBInfo structure.
Name Description kCDBFNoDisconnect Set by the IOSCSIDevice client to indicate the target may not disconnect during the execution of this IOSCSICommand. kCDBFlagsDisableParity Set by the IOSCSIController class to tell the host adapter driver to disable parity checking during the execution of this CDB. kCDBFlagsNoDisconnect Set by the IOSCSIController class to tell the host adapter driver that the target may not disconnect during the execution of this IOSCSICommand. kCDBFlagsNegotiateSDTR Set by the IOSCSIController class to tell the host adapter driver that it should initiate synchronous data transfer negotiation during this IOSCSICommand. kCDBFlagsNegotiateWDTR Set by the IOSCSIController class to tell the host adapter driver that it should initiate wide data transfer negotiation during this IOSCSICommand.
enum SCSIQueuePosition { kQPositionTail = 0, kQPositionHead = 1, };
Indicates whether a IOSCSICommand should be added to the head or tail of the queue selected.
Name Description kQPositionTail Queue request at the tail (end) of the selected queue. kQPositionHead Queue request at the head (front) of the selected queue.
enum SCSIQueueType { kQTypeNormalQ = 0, kQTypeBypassQ = 1, };
Each IOSCSIDevice has two queues, a normal Q and a bypass Q. The treatment of the
queues is essentially identical except that the bypass Q is given preference whenever
it has commands available.
Usually, the client will use the normal Q for regular I/O commands and the bypass Q
to send error recovery commands to the device.
Name Description kQTypeNormalQ Indicates command applies to the normal IOSCSIDevice queue. kQTypeBypassQ Indicates command applies to the bypass IOSCSIDevice queue.
© 2000 Apple Computer, Inc. (Last Updated 2/23/2000)