Sun Microsystems, Inc.
spacerspacer
spacer   www.sun.com docs.sun.com | | |  
spacer
black dot
   
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z
    
 
Kernel Functions for Driversscsi_setup_cdb(9F)


NAME

 scsi_setup_cdb - setup SCSI command descriptor block (CDB)

SYNOPSIS

 int scsi_setup_cdb(union scsi_cdb *cdbp, uchar_t cmd, uint_t addr, uint_t cnt, uint_t othr_cdb_data);

INTERFACE LEVEL

 

Solaris DDI specific (Solaris DDI).

PARAMETERS

 
cdbp
Pointer to command descriptor block.
cmd
The first byte of the SCSI group 0, 1, 2, 4, or 5 CDB.
addr
Pointer to the location of the data.
cnt
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.
othr_cdb_data
Additional CDB data.

DESCRIPTION

 

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[1] as the makecom(9F) functions do. Also, the fixed bit for sequential access device commands is not set.

RETURN VALUES

 

scsi_setup_cdb() returns:

1
Upon success.
0
Upon failure.

CONTEXT

 

These functions can be called from a user or interrupt context.

SEE ALSO

 

makecom(9F), scsi_pkt(9S)

Writing Device Drivers

American National Standard Small Computer System Interface-2 (SCSI-2)

American National Standard SCSI-3 Primary Commands (SPC)


SunOS 5.9Go To TopLast Changed 23 Jun 1997

 
      
      
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.