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_hba_tran_alloc(9F)


NAME

 scsi_hba_tran_alloc, scsi_hba_tran_free - allocate and free transport structures

SYNOPSIS

 
#include <sys/scsi/scsi.h>
scsi_hba_tran_t *scsi_hba_tran_alloc(dev_info_t *dip, int flags);
 void scsi_hba_tran_free(scsi_hba_tran_t *hba_tran);

INTERFACE LEVEL

 

Solaris architecture specific (Solaris DDI).

PARAMETERS

 
dip
Pointer to a dev_info structure, defining the HBA driver instance.
flag
Flag modifiers. The only possible flag value is SCSI_HBA_CANSLEEP (memory allocation may sleep).
hba_tran
Pointer to a scsi_hba_tran(9S) structure.

DESCRIPTION

 

For scsi_hba_tran_alloc():

scsi_hba_tran_alloc() allocates a scsi_hba_tran(9S) structure for a HBA driver. The HBA must use this structure to register its transport vectors with the system by using scsi_hba_attach_setup(9F).

If the flag SCSI_HBA_CANSLEEP is set in flags, scsi_hba_tran_alloc() may sleep when allocating resources; otherwise it may not sleep, and callers should be prepared to deal with allocation failures.

For scsi_hba_tran_free():

scsi_hba_tran_free() is used to free the scsi_hba_tran(9S) structure allocated by scsi_hba_tran_alloc().

RETURN VALUES

 

scsi_hba_tran_alloc() returns a pointer to the allocated transport structure, or NULL if no space is available.

CONTEXT

 

scsi_hba_tran_alloc() can be called from user or interrupt context. Drivers must not allow scsi_hba_tran_alloc() to sleep if called from an interrupt routine.

scsi_hba_tran_free() can be called from user or interrupt context.

SEE ALSO

 

scsi_hba_attach_setup(9F), scsi_hba_tran(9S)

Writing Device Drivers


SunOS 5.9Go To TopLast Changed 30 Aug 1995

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