The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

scsi_hba_tran (9)
  • >> scsi_hba_tran (9) ( Solaris man: Ядро )
  •  

    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 structure.

    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 target device.

    tran_abort

    Function entry that aborts one SCSI command, or all pending SCSI commands.

    tran_getcap

    Function entry that retrieves a SCSI capability.

    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 structure 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 transfer 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 register a bus reset notification request with the HBA driver.

    tran_bus_reset

    Function entry that resets the SCSI bus without 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_setup_pkt(9E).

    tran_pkt_destructor

    Additional optional entry point that performs the actions of a destructor. See tran_setup_pkt(9E).

    tran_hba_len

    Size of pkt_ha_private. See tran_setup_pkt(9E).

    tran_interconnect_type

    Integer value that denotes the interconnect type of the transport as defined in the services.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_setup_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


     

    Index

    NAME
    SYNOPSIS
    INTERFACE LEVEL
    DESCRIPTION
    STRUCTURE MEMBERS
    SEE ALSO


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру