#include <sys/types.h> #include <sys/ddi.h> #include <sys/sdi.h>
Note that many of the DDI entry point routines take an idata argument in DDI 8 and later versions. This refers to the idata value that is returned by the CFG_ADD subfunction to the config(D2) entry point routine, and not the SDI hba_idata_v5(D4sdi) structure that is often referred to as the SDI idata structure. See ``idata (instance data)'' in HDK Technical Reference.
With the exception of the _load(D2sdi) and _unload(D2sdi) entry points, each routine is uniquely identified by a prefix(D1) string that is identified in the driver configuration files. This reduces the change of a symbol collision with another driver or module.
Entry points for HBA drivers are declared in the driver's hba_info(D4sdi) structure.
Any number of instances of the same driver entry point routine can be running concurrently. It is the responsibility of the driver to synchronize access to its private data structures with the standard DDI synchronization primitives in HDK Technical Reference.
``DDI interface versioning'' in HDK Technical Reference
``Context of a driver'' in HDK Technical Reference
``Entry-point routines'' in HDK Technical Reference