scsi_hba_attach_setup man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

scsi_hba_attach_setup(9F)Kernel Functions for Driversscsi_hba_attach_setup(9F)

NAME
       scsi_hba_attach_setup,  scsi_hba_attach,	 scsi_hba_detach  -  SCSI  HBA
       attach and detach routines

SYNOPSIS
       #include <sys/scsi/scsi.h>

       int     scsi_hba_attach_setup(dev_info_t	     *dip,	ddi_dma_attr_t
       *hba_dma_attr, scsi_hba_tran_t *hba_tran, int hba_flags);

       int    scsi_hba_attach(dev_info_t    *dip,    ddi_dma_lim_t   *hba_lim,
       scsi_hba_tran_t *hba_tran, int hba_flags, void *hba_options);

       int scsi_hba_detach(dev_info_t *dip);

INTERFACE LEVEL
       Solaris architecture specific (Solaris DDI).

PARAMETERS
       dip	       A pointer to the dev_info_t structure, referring to the
		       instance of the HBA device.

       hba_lim	       A pointer to a ddi_dma_lim(9S) structure.

       hba_tran	       A pointer to a scsi_hba_tran(9S) structure.

       hba_flags       Flag   modifiers.   The	only  defined  flag  value  is
		       SCSI_HBA_TRAN_CLONE.

       hba_options     Optional features provided by the HBA driver for future
		       extensions; must be NULL.

       hba_dma_attr    A pointer to a ddi_dma_attr(9S) structure.

DESCRIPTION
       scsi_hba_attach_setup()	  is	the    recommended    interface	  over
       scsi_hba_attach().

       For scsi_hba_attach_setup() and scsi_hba_attach():

       scsi_hba_attach() registers the DMA limits hba_lim  and	the  transport
       vectors	hba_tran  of  each  instance of the HBA device defined by dip.
       scsi_hba_attach_setup() registers the DMA attributes  hba_dma_attr  and
       the  transport  vectors	hba_tran  of  each  instance of the HBA device
       defined by dip. The HBA driver can pass different  DMA  limits  or  DMA
       attributes,  and	 transport vectors for each instance of the device, as
       necessary, to support any constraints imposed by the HBA itself.

       scsi_hba_attach() and scsi_hba_attach_setup() use the dev_bus_ops field
       in  the	dev_ops(9S)  structure.	 The HBA driver should initialize this
       field to NULL before calling scsi_hba_attach() or  scsi_hba_attach_set‐
       up().

       If  SCSI_HBA_TRAN_CLONE	is requested in hba_flags, the hba_tran struc‐
       ture will be cloned once for each  target  attached  to	the  HBA.  The
       cloning	of the structure will occur before the tran_tgt_init(9E) entry
       point is called to initialize a target. At  all	subsequent  HBA	 entry
       points,	including  tran_tgt_init(9E),  the  scsi_hba_tran_t  structure
       passed as an argument or found in a scsi_address structure will be  the
       'cloned'	 scsi_hba_tran_t  structure,  thus allowing the HBA to use the
       tran_tgt_private field in the scsi_hba_tran_t  structure	 to  point  to
       per-target  data.  The  HBA  must  take	care  to  free	only  the same
       scsi_hba_tran_t structure it allocated  when  detaching;	 all  'cloned'
       scsi_hba_tran_t structures allocated by the system will be freed by the
       system.

       scsi_hba_attach() and scsi_hba_attach_setup() attach a number of	 inte‐
       ger-valued  properties  to  dip, unless properties of the same name are
       already attached to the node. An HBA driver should retrieve these  con‐
       figuration  parameters  via  ddi_prop_get_int(9F), and respect any set‐
       tings for features provided the HBA.

       scsi-options

	   Optional SCSI configuration bits

	   SCSI_OPTIONS_DR

	       If not set, the HBA should not grant Disconnect	privileges  to
	       target devices.

	   SCSI_OPTIONS_LINK

	       If not set, the HBA should not enable Linked Commands.

	   SCSI_OPTIONS_TAG

	       If not set, the HBA should not operate in Command Tagged Queue‐
	       ing mode.

	   SCSI_OPTIONS_PARITY

	       If not set, the HBA should not operate in parity mode.

	   SCSI_OPTIONS_QAS

	       If not set, the HBA should not make use of the  Quick  Arbitra‐
	       tion Select feature. Consult your Sun hardware documentation to
	       determine whether your machine supports QAS.

	   SCSI_OPTIONS_FAST

	       If not set, the HBA should not operate the bus  in  FAST	 SCSI‐
	       mode.

	   SCSI_OPTIONS_FAST20

	       If  not	set, the HBA should not operate the bus in FAST20 SCSI
	       mode.

	   SCSI_OPTIONS_FAST40

	       If not set, the HBA should not operate the bus in  FAST40  SCSI
	       mode.

	   SCSI_OPTIONS_FAST80

	       If  not	set, the HBA should not operate the bus in FAST80 SCSI
	       mode.

	   SCSI_OPTIONS_FAST160

	       If not set, the HBA should not operate the bus in FAST160  SCSI
	       mode.

	   SCSI_OPTIONS_FAST320

	       If  not set, the HBA should not operate the bus in FAST320 SCSI
	       mode.

	   SCSI_OPTIONS_WIDE

	       If not set, the HBA should not operate the  bus	in  WIDE  SCSI
	       mode.

	   SCSI_OPTIONS_SYNC

	       If  not	set, the HBA should not operate the bus in synchronous
	       transfer mode.

       scsi-reset-delay

	   SCSI bus or device reset recovery time, in milliseconds.

       scsi-selection-timeout

	   Default SCSI selection phase timeout value, in milliseconds. Please
	   refer to individual HBA man pages for any HBA-specific information

       For scsi_hba_detach():

       scsi_hba_detach() removes the reference to the DMA limits or attributes
       structure and the transport vector for the given	 instance  of  an  HBA
       driver.

RETURN VALUES
       scsi_hba_attach(),   scsi_hba_attach_setup(),   and   scsi_hba_detach()
       return DDI_SUCCESS if the function call succeeds, and return  DDI_FAIL‐
       URE on failure.

CONTEXT
       scsi_hba_attach()  and  scsi_hba_attach_setup()	should	be called from
       attach(9E). scsi_hba_detach() should be called from detach(9E).

SEE ALSO
       attach(9E),   detach(9E),   tran_tgt_init(9E),	 ddi_prop_get_int(9F),
       ddi_dma_attr(9S),   ddi_dma_lim(9S),   dev_ops(9S),   scsi_address(9S),
       scsi_hba_tran(9S)

       Writing Device Drivers

NOTES
       It is the HBA driver's responsibility to ensure that no more  transport
       requests will be taken on behalf of any SCSI target device driver after
       scsi_hba_detach() is called.

       The scsi_hba_attach() function is obsolete and will be discontinued  in
       a future release. This function is replaced by scsi_hba_attach_setup().

SunOS 5.10			  13 Nov 2002	     scsi_hba_attach_setup(9F)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net