When attaching an instance of an HBA device, scsi_hba_attach_setup(9F) creates a number of SCSI configuration parameter properties for that HBA instance. A particular property is created only if there is no existing property of the same name already attached to the HBA instance, permitting a default property value to be overridden in an HBA configuration file.
An HBA driver must use ddi_prop_get_int(9F) to retrieve each property. The HBA driver then modifies (or accepts the default value of) the properties to configure its specific operation.
The scsi-reset-delay property is an integer specifying the SCSI bus or device reset delay recovery time in milliseconds.
The scsi-options property is an integer specifying a number of options through individually defined bits. The bits in scsi_options are:
SCSI_OPTIONS_DR (0x008) - If not set, the HBA should not grant disconnect privileges to a target device.
SCSI_OPTIONS_LINK (0x010) - If not set, the HBA should not enable linked commands.
SCSI_OPTIONS_SYNC (0x020) - If not set, the HBA should not negotiate synchronous data transfer, and should reject any attempt to negotiate synchronous data transfer initiated by a target.
SCSI_OPTIONS_PARITY (0x040) - If not set, the HBA should run the SCSI bus without parity.
SCSI_OPTIONS_TAG (0x080) - If not set, the HBA should not operate in Command Tagged Queuing mode.
SCSI_OPTIONS_FAST (0x100) - If not set, the HBA should not operate the bus in FAST SCSI mode.
SCSI_OPTIONS_WIDE (0x200) - If not set, the HBA should not operate the bus in WIDE SCSI mode.
An HBA driver may support a per-target scsi-options feature in the following format:
In this example, < n> is the target ID. If the per-target scsi-options property is defined for a particular target, the HBA driver uses the value of the per-target scsi-options property for that target rather than the per-HBA driver instance scsi-options property. This can provide more precise control if, for example, synchronous data transfer needs to be disabled for just one particular target device. The per-target scsi-options property may be defined in the driver.conf(4) file.
Here is an example of a per-target scsi-options property definition to disable synchronous data transfer for target device 3: