svcadm(8)을 검색하려면 섹션에서 8 을 선택하고, 맨 페이지 이름에 svcadm을 입력하고 검색을 누른다.
scsi_hba_tran(9s)
Kernel & Driver Data Structures scsi_hba_tran(9S)
NAME
scsi_hba_tran - SCSI Host Bus Adapter (HBA) driver transport vector
structure
SYNOPSIS
#include <sys/scsi/scsi.h>
INTERFACE LEVEL
Solaris architecture specific (Solaris DDI).
DESCRIPTION
A scsi_hba_tran_t structure defines vectors that an HBA driver exports
to SCSA interfaces so that HBA specific functions can be executed.
STRUCTURE MEMBERS
dev_info_t *tran_hba_dip; /* HBAs dev_info
pointer */
void *tran_hba_private; /* HBA softstate */
void *tran_tgt_private; /* HBA target private
pointer */
struct scsi_device *tran_sd; /* scsi_device */
int (*tran_tgt_init)( ); /* Transport target */
Initialization */
int (*tran_tgt_probe)( ); /* Transport target
probe */
void (*tran_tgt_free)( ); /* Transport target
free */
int (*tran_start)( ); /* Transport start */
int (*tran_reset)( ); /* Transport reset */
int (*tran_abort)( ); /* Transport abort */
int (*tran_getcap)( ); /* Capability
retrieval */
int (*tran_setcap)( ); /* Capability
establishment */
struct scsi_pkt *(*tran_init_pkt)( ); /* Packet and DMA
allocation */
void (*tran_destroy_pkt)( ); /* Packet and DMA */
deallocation */
void (*tran_dmafree)( ); /* DMA deallocation */
void (*tran_sync_pkt)( ); /* Sync DMA */
void (*tran_reset_notify)( );/* Bus reset
notification */
int (*tran_bus_reset)( ); /* Reset bus only */
int (*tran_quiesce)( ); /* Quiesce a bus */
int (*tran_unquiesce)( ); /* Unquiesce a bus */
int (*tran_setup_pkt)( ); /* Initialization
for pkt */
int (*tran_teardown_pkt)( );/* Deallocation */
int (*tran_pkt_constructor) ( );
/* Constructor */
int (*tran_pkt_destructor) ( );
/* Destructor */
int tran_hba_len; /* # bytes for
pkt_ha_private */
int tran_interconnect_type; /* transport
interconnect */
tran_hba_dip dev_info pointer to the HBA that supplies the
scsi_hba_tran structure.
tran_hba_private Private pointer that the HBA driver can use
to refer to the device's soft state struc‐
ture.
tran_tgt_private Private pointer that the HBA can use to refer
to per-target specific data. This field can
only be used when the SCSI_HBA_TRAN_CLONE
flag is specified in scsi_hba_attach(9F). In
this case, the HBA driver must initialize
this field in its tran_tgt_init(9E) entry
point.
tran_sd Pointer to scsi_device(9S) structure if
cloning; otherwise NULL.
tran_tgt_init Function entry that allows per-target HBA
initialization, if necessary.
tran_tgt_probe Function entry that allows per-target
scsi_probe(9F) customization, if necessary.
tran_tgt_free Function entry that allows per-target HBA
deallocation, if necessary.
tran_start Function entry that starts a SCSI command
execution on the HBA hardware.
tran_reset Function entry that resets a SCSI bus or tar‐
get device.
tran_abort Function entry that aborts one SCSI command,
or all pending SCSI commands.
tran_getcap Function entry that retrieves a SCSI capabil‐
ity.
tran_setcap Function entry that sets a SCSI capability.
tran_init_pkt Function entry that allocates a scsi_pkt
structure.
tran_destroy_pkt Function entry that frees a scsi_pkt struc‐
ture allocated by tran_init_pkt.
tran_dmafree Function entry that frees DMA resources that
were previously allocated by tran_init_pkt.
Not called for HBA drivers that provide a
tran_setup_pkt entry point.
tran_sync_pkt Synchronizes data in pkt after a data trans‐
fer has been completed. Not called for HBA
drivers that provide a tran_setup_pkt entry
point.
tran_reset_notify Function entry that allows a target to regis‐
ter a bus reset notification request with the
HBA driver.
tran_bus_reset Function entry that resets the SCSI bus with‐
out resetting targets.
tran_quiesce Function entry that waits for all outstanding
commands to complete and blocks (or queues)
any I/O requests issued.
tran_unquiesce Function entry that allows I/O activities to
resume on the SCSI bus.
tran_setup_pkt Optional entry point that initializes a
scsi_pkt structure. See tran_setup_pkt(9E).
tran_teardown_pkt Entry point that releases resources allocated
by tran_setup_pkt.
tran_pkt_constructor Additional optional entry point that performs
the actions of a constructor. See tran_set‐
up_pkt(9E).
tran_pkt_destructor Additional optional entry point that performs
the actions of a destructor. See tran_set‐
up_pkt(9E).
tran_hba_len Size of pkt_ha_private. See tran_set‐
up_pkt(9E).
tran_interconnect_type Integer value that denotes the interconnect
type of the transport as defined in the ser‐
vices.h header file.
SEE ALSO
tran_abort(9E), tran_bus_reset(9E), tran_destroy_pkt(9E),
tran_dmafree(9E), tran_getcap(9E), tran_init_pkt(9E), tran_quiesce(9E),
tran_reset(9E), tran_reset_notify(9E), tran_setcap(9E), tran_set‐
up_pkt(9E), tran_start(9E), tran_sync_pkt(9E), tran_tgt_free(9E),
tran_tgt_init(9E), tran_tgt_probe(9E), tran_unquiesce(9E),
ddi_dma_sync(9F), scsi_hba_attach(9F), scsi_hba_pkt_alloc(9F),
scsi_hba_pkt_free(9F), scsi_probe(9F), scsi_device(9S), scsi_pkt(9S)
Writing Device Drivers in Oracle Solaris 11.4
Oracle Solaris 11.4 30 May 2006 scsi_hba_tran(9S)