Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

scsi_address(9s) [posix man page]

scsi_address(9S)					    Data Structures for Drivers 					  scsi_address(9S)

NAME
scsi_address - SCSI address structure SYNOPSIS
#include <sys/scsi/scsi.h> INTERFACE LEVEL
Solaris architecture specific (Solaris DDI) DESCRIPTION
A scsi_address structure defines the addressing components for a SCSI target device. The address of the target device is separated into two components: target number and logical unit number. The two addressing components are used to uniquely identify any type of SCSI device; however, most devices can be addressed with the target component of the address. In the case where only the target component is used to address the device, the logical unit should be set to 0. If the SCSI target device supports logical units, then the HBA must interpret the logical units field of the data structure. The pkt_address member of a scsi_pkt(9S) is initialized by scsi_init_pkt(9F). STRUCTURE MEMBERS
scsi_hba_tran_t *a_hba_tran; /* Transport vectors for the SCSI bus */ ushort_t a_target; /* SCSI target id */ uchar_t a_lun; /* SCSI logical unit */ a_hba_tran is a pointer to the controlling HBA's transport vector structure. The SCSA interface uses this field to pass any transport requests from the SCSI target device drivers to the HBA driver. a_target is the target component of the SCSI address. a_lun is the logical unit component of the SCSI address. The logical unit is used to further distinguish a SCSI target device that supports multiple logical units from one that does not. The makecom(9F) family of functions use the a_lun field to set the logical unit field in the SCSI CDB, for compatibility with SCSI-1. SEE ALSO
makecom(9F), scsi_init_pkt(9F), scsi_hba_tran(9S), scsi_pkt(9S) Writing Device Drivers SunOS 5.10 30 Aug 1995 scsi_address(9S)

Check Out this Related Man Page

tran_reset(9E)							Driver Entry Points						    tran_reset(9E)

NAME
tran_reset - reset a SCSI bus or target SYNOPSIS
#include <sys/scsi/scsi.h> int prefixtran_reset(struct scsi_address *ap, int level); INTERFACE LEVEL
Solaris architecture specific (Solaris DDI). PARAMETERS
ap Pointer to the scsi_address(9S) structure. level The level of reset required. DESCRIPTION
The tran_reset() vector in the scsi_hba_tran(9S) structure must be initialized during the HBA driver's attach(9E) to point to an HBA entry point to be called when a target driver calls scsi_reset(9F). tran_reset() must reset either the SCSI bus, a SCSI target device, or a SCSI logical unit as specified by level. level must be one of the following: RESET_ALL Reset the SCSI bus. RESET_TARGET Reset the target specified by ap. RESET_LUN Reset the logical unit specified by ap. tran_reset should set the pkt_reason field of all outstanding packets in the transport layer associated with each target or logical unit that was successfully reset to CMD_RESET and the pkt_statistics field must be OR'ed with either STAT_BUS_RESET (if the SCSI bus was reset) or STAT_DEV_RESET (if the target or logical unit was reset). The HBA driver should use a SCSI Bus Device Reset Message to reset a target device. The HBA driver should use a SCSI Logical Unit Reset Message to reset a logical unit. Packets that are in the transport layer but not yet active on the bus should be returned with pkt_reason set to CMD_RESET and pkt_statis- tics OR'ed with STAT_ABORTED. Support for RESET_LUN is optional but strongly encouraged for new and updated HBA drivers. If an HBA driver provides RESET_LUN support, it must also create the lun-reset capability with a value of zero for each target device instance represented by a valid ap. The HBA is also required to provide the means to return the current value of the lun-reset capability in its tran_getcap(9E) routine, as well as the means to change the value of the lun_reset capability in its tran_setcap(9E) routine. RETURN VALUES
tran_reset() should return: 1 on success. 0 on failure. SEE ALSO
attach(9E), ddi_dma_buf_setup(9F), scsi_hba_attach(9F), scsi_reset(9F), scsi_address(9S), scsi_hba_tran(9S) Writing Device Drivers NOTES
If pkt_reason already indicates that an earlier error had occurred for a particular pkt, tran_reset() should not overwrite pkt_reason with CMD_RESET. SunOS 5.10 12 Jul 2002 tran_reset(9E)
Man Page