SCSI_GET_DEVICE_TYPE_SCSI_OPTIONS(9F) Kernel Functions for Drivers
NAME
scsi_get_device_type_scsi_options - look up per-device-type scsi-
options property
SYNOPSIS
#include <sys/scsi/scsi.h>
int scsi_get_device_type_scsi_options(
dev_info_t *dip,
struct scsi_device *devp,
int default_scsi_options);
INTERFACE LEVEL
illumos DDI specific (illumos DDI).
PARAMETERS
dip Pointer to the device info node for this HBA
driver.
devp Pointer to a
scsi_device(9S) structure of the
target.
default_scsi_options Value returned if no match is found.
DESCRIPTION
The
scsi_get_device_type_scsi_options() function looks up the
property
device-type-scsi-options-list, which can be specified in the
HBA's
driver.conf(5) file. This property allows specification of
scsi-options on a per-device-type basis.
The formal syntax is:
device-type-scsi-options-list =
<duplet> [,
<duplet> *];
where:
<duplet> :=
<vid+pid>,
<scsi-options-property-name> and:
<scsi-options-property-name> =
<value>;
The string
<vid+pid> is returned by the device on a SCSI inquiry
command. This string can contain any character in the range
0x20-0x7e. Characters such as double quote (
") or single quote (
'),
which are not permitted in property value strings, are represented by
their octal equivalent (for example, \042 and \047). Trailing spaces
can be truncated.
For example:
device-type-scsi-options-list=
"SEAGATE ST32550W", "seagate-options",
"EXABYTE EXB-2501". "exabyte-options",
"IBM OEM DFHSS4S", "ibm-options";
seagate-options = 0x78;
exabyte-options = 0x58;
ibm-options = 0x378;
The
scsi_get_device_type_scsi_options() function searches the list of
duplets for a matching
INQUIRY string. If a match is found,
scsi_get_device_type_scsi_options() returns the corresponding value.
RETURN VALUES
scsi_get_device_type_scsi_options() returns the
scsi-options value
found, or if no match is found the
default_scsi_options value passed
in.
CONTEXT
This function can be called from kernel or interrupt context.
SEE ALSO
Writing Device Drivers November 19, 2001
SCSI_GET_DEVICE_TYPE_SCSI_OPTIONS(9F)