scsi_ioctl(D3X)scsi_ioctl(D3X)NAMEscsi_ioctl - perform host adapter ioctl
SYNOPSIS
#include <sys/types.h>
#include <sys/scsi.h>
int
(*scsi_ioctl)( vertex_hdl_t ctlr_vhdl,
uint command,
struct scsi_ha_op *operand);
The host adapter scsi_ioctl interface is used by user level
administrative applications (with privileged access) to perform
operations on a scsi bus, fibre channel loop, or directly to a host
adapter.
There is no kernel object called scsi_ioctl; rather, there is a pointer
to each host adapter's scsi_ioctl function in the sci_ioctl field of the
scsi_ctlr_info structure, which is attached to the vertex corresponding
to the host adapter.
DESCRIPTION
The ctlr_vhdl argument specifies the hwgraph vertex for the SCSI host
adapter. The command argument specifies what operation is requested.
There is a list of these operations in /usr/include/sys/scsi.h, all of
which have a name of the form SOP_*. See scsiha(7m) for additional
information. The operand argument is a pointer to a scsi_ha_op
structure, which is used to supply additional information to the
scsi_ioctl function. Two adapter-specific ioctls have been defined:
SOP_GETDATA and SOP_SENDDATA. With them an application and driver can
perform activities beyond those defined by the other SOP_* ioctls.
DIAGNOSTICSscsi_ioctl returns 0 if there is no error. Otherwise, it returns a
standard error number (see /usr/include/sys/errno.h).
NOTESscsi_ioctl is stored as a function pointer in the scsi_ctlr_info_t
structure, which is associated with the scsi host adapter vertex in the
hwgraph. The information structure in the scsi target vertex also has a
pointer to the scsi_ctlr_info_t of the host adapter that the target is
connected to. Given a lun_vhdl (vertex handle of the device) the
scsi_alloc function can be called as follows:
scsi_lun_info_t *scsi_lun_info;
...
scsi_lun_info = scsi_lun_info_get(lun_vhdl);
SLI_IOCTL(scsi_lun_info)(lun_vhdl,option,callback_function);
Page 1
scsi_ioctl(D3X)scsi_ioctl(D3X)SEE ALSO
comments in /usr/include/sys/scsi.h, hwgraph.intro(D4X), scsi_alloc(D3X),
scsi_free(D3X), scsi_info(D3X), scsi_command(D3X), scsi_abort(D3X), SCSI
chapter of the IRIX Device Driver Programmer's Guide.
Page 2