Solaris DDI specific (Solaris DDI).
Pointer to command descriptor block.
The first byte of the SCSI group 0, 1, 2, 4, or 5 CDB.
Pointer to the location of the data.
Data transfer length in units defined by the SCSI device type. For sequential devices cnt is the number of bytes. For block devices, cnt is the number of blocks.
Additional CDB data.
scsi_setup_cdb() function initializes a group 0, 1, 2, 4, or 5 type of command descriptor block pointed to by cdbp using cmd, addr, cnt, othr_cdb_data.
addr should be set to 0 for commands having no addressing information (for example, group 0 READ command for sequential access devices). othr_cdb_data should be additional CDB data for Group 4 commands; otherwise, it should be set to 0.
scsi_setup_cdb() function does not set the LUN bits in CDB as the makecom(9F) functions do. Also, the fixed bit for sequential access device commands is not set.
These functions can be called from a user or interrupt context.
American National Standard Small Computer System Interface-2 (SCSI-2)
American National Standard SCSI-3 Primary Commands (SPC)