Configuration tables are arrays used to store device information. These tables are created automatically by the Link Kit when the driver is installed into the kernel or can be created manually for drivers that cannot conform to the naming convention established by the installation interface.
Two configuration structures are defined:
includes information about SCSI ID and LUN (logical unit number) values, host adapter number, device name, and a pointer to the adapter's _entry(D2osdi) routine.
The SCSI peripheral's LUN is encoded in its minor number and is used as in index into the scsi_ha_cfg array. Each SCSI peripheral driver passes arguments to the host adapter driver using the host adapter's _entry(D2osdi) entry point routine.
contains the host adapter base address, the host adapter number, the interrupt and DMA channels, and a pointer to an adapter entry routine.
When the system is initialized, configuration information is provided by the system based on data in the Link Kit's mscsiF) file. A device driver uses this information to initialize all needed data structures. Information contained in the configuration tables accessed by the peripheral driver includes the host adapter base address, the ID of the SCSI controller, and a device logical unit number (LUN).
See the manual pages for more information about these structures.