Provides the means to download microcode to the adapter.
The SCIODNLD operation provides for downloading microcode to the selected adapter. This operation can be used by system management routines to prepare the adapter for operation. The adapter can be opened in Normal or Diagnostic mode when the SCIODNLD operation is run.
There are two options for executing the SCIODNLD operation. The caller can either download microcode to the adapter or query the version of the currently downloaded microcode.
If the download microcode option is selected, a pointer to a download buffer and its length must be supplied in the caller's memory space. The maximum length of this microcode is adapter-dependent. If the adapter requires transfer of complete blocks, the microcode to be sent must be padded to the next largest block boundary. The block size, if any, is adapter-dependent. Refer to the reference manual for the particular SCSI adapter to find the adapter-specific requirements of the microcode buffer to be downloaded.
The SCSI adapter device driver validates the parameter values for such things as maximum length and block boundaries, as required. The arg parameter for the SCIODNLD operation specifies the address of a sc_download structure. This structure is defined in the /usr/include/sys/scsi.h file.
If the query version option is selected, the pointer and length fields in the passed parameter block are ignored. On successful completion of the SCIODNLD operation, the microcode version is contained in the version_number field.
The SCSI adapter device driver performs normal error-recovery procedures during execution of the SCIODNLD operation.
When completed successfully, this operation returns a value of 0. Otherwise, a value of -1 is returned and the errno global variable is set to one of the following values:
/dev/scsi0, /dev/scsi1,..., /dev/scsin | |
Provide an interface to allow SCSI device drivers to access SCSI devices and adapters. |
The rmt SCSI device driver, scdisk SCSI device driver, SCSI Adapter device driver.
SCSI Subsystem Overview in AIX Version 4.3 Kernel Extensions and Device Support Programming Concepts.