#include <IOKit/scsi/spi/IOSCSIParallelControllerCharacteristics.h>
IOKit/scsi/spi/IOSCSIParallelControllerCharacteristics.h
@header IOSCSIParallelControllerCharacteristics
SCSI controller specific typedefs and constants used inside DriverKit environment.
enumSCSIParallelFeature
When the DoesHBASupportSCSIParallelFeature() member routine of the controller
child class is called, it will return true if the HBA that it controls
supports the specified SCSIParallelFeature or false if it does not.
| kSCSIParallelFeature_WideDataTransfer | 0 | The selector for support of Wide Data Transfers. Only Wide16 is supported as Wide32 has been obsoleted by the SPI-3 specification. |
| kSCSIParallelFeature_SynchronousDataTransfer | 1 | The selector for support of Synchronous Data Transfers. |
| kSCSIParallelFeature_QuickArbitrationAndSelection | 2 | The selector for support of Quick Arbitration and Selection (QAS). |
| kSCSIParallelFeature_DoubleTransitionDataTransfers | 3 | The selector for support of Double Transition (DT) data transfers. |
| kSCSIParallelFeature_InformationUnitTransfers | 4 | The selector for SPI Information Unit (IU) transfers. |
| kSCSIParallelFeature_TotalFeatureCount | 5 | Since the Feature selectors are zero base, this will always have the correct total. |
typedefSCSIParallelFeature
typedef enum SCSIParallelFeature SCSIParallelFeature;
enumSCSIParallelFeatureRequest
| kSCSIParallelFeature_NoNegotiation | 0 | This selector indicates that current negotiation should be used. |
| kSCSIParallelFeature_AttemptNegotiation | 1 | This selector indicates that the controller should attempt negotiation for the feature |
| kSCSIParallelFeature_ClearNegotiation | 2 | This selector indicates that the controller should clear any negotiation for the feature |
typedefSCSIParallelFeatureRequest
typedef enum SCSIParallelFeatureRequest SCSIParallelFeatureRequest;
enumSCSIParallelFeatureResult
| kSCSIParallelFeature_NegotitiationUnchanged | 0 | |
| kSCSIParallelFeature_NegotitiationCleared | 1 | |
| kSCSIParallelFeature_NegotitiationSuccess | 2 |
typedefSCSIParallelFeatureResult
typedef enum SCSIParallelFeatureResult SCSIParallelFeatureResult;
macrokIOHierarchicalLogicalUnitSupportKey
Set this key with a value of true in UserReportHBAConstraints() to indicate support
for full 8-byte LUN addressing
#define kIOHierarchicalLogicalUnitSupportKey "SCSI Hierarchical Logical Unit Support"
macrokIOMinimumHBADataAlignmentMaskKey
This is the alignment mask used when allocating per-task HBA data. It allows
the HBA to declare whether or not it supports 64-bit addressability and what the
minimum byte alignment is for the data. E.g. By specifying 0x0000FFFFFFFFFFFEULL,
the controller would be indicating that it supports 48-bits of addressability, but
at a minimum of being 2-byte aligned.
#define kIOMinimumHBADataAlignmentMaskKey "HBA Data Alignment"