Kernel Functions for Drivers scsi_hba_init(9F)
NAME
scsi_hba_init, scsi_hba_fini - SCSI Host Bus Adapter system
initialization and completion routinesSYNOPSIS
#include
int scsi_hba_init(struct modlinkage *modlp);
void scsi_hba_fini(struct modlinkage *modlp);
INTERFACE LEVEL
Solaris architecture specific (Solaris DDI).PARAMETERS
modlp Pointer to the Host Bus Adapters module linkage structure.DESCRIPTION
scsi_hba_init()
scsi_hba_init() is the system-provided initialization rou-
tine for SCSI HBA drivers. The scsi_hba_init() function
registers the HBA in the system and allows the driver to accept configuration requests on behalf of SCSI targetdrivers. The scsi_hba_init() routine must be called in the
HBA's _init(9E) routine before mod_install(9F) is called. If
mod_install(9F) fails, the HBA's _init(9E) should call
scsi_hba_fini() before returning failure.
scsi_hba_fini()
scsi_hba_fini() is the system provided completion routine
for SCSI HBA drivers. scsi_hba_fini() removes all of the
system references for the HBA that were created inscsi_hba_init(). The scsi_hba_fini() routine should be
called in the HBA's _fini(9E) routine if mod_remove(9F) is
successful.RETURN VALUES
scsi_hba_init() returns 0 if successful, and a non-zero
value otherwise. If scsi_hba_init() fails, the HBA's _init()
entry point should return the value returned byscsi_hba_init().
CONTEXT
scsi_hba_init() and scsi_hba_fini() should be called from
_init(9E) or _fini(9E), respectively.
SunOS 5.11 Last change: 1 Nov 1993 1
Kernel Functions for Drivers scsi_hba_init(9F)
SEE ALSO
_fini(9E), _init(9E), mod_install(9F), mod_remove(9F),
scsi_pktalloc(9F), scsi_pktfree(9F), scsi_hba_tran(9S)
Writing Device Drivers NOTESThe HBA is responsible for ensuring that no DDI request rou-
tines are called on behalf of its SCSI target drivers oncescsi_hba_fini() is called.
SunOS 5.11 Last change: 1 Nov 1993 2