2000-12-11 16:53:11 +03:00
|
|
|
.\" $NetBSD: iop.4,v 1.5 2000/12/11 13:53:11 ad Exp $
|
2000-11-08 22:54:12 +03:00
|
|
|
.\"
|
|
|
|
.\" Copyright (c) 2000 The NetBSD Foundation, Inc.
|
|
|
|
.\" All rights reserved.
|
|
|
|
.\"
|
|
|
|
.\" This code is derived from software contributed to The NetBSD Foundation
|
|
|
|
.\" by Andrew Doran.
|
|
|
|
.\"
|
|
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
|
|
.\" modification, are permitted provided that the following conditions
|
|
|
|
.\" are met:
|
|
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
|
|
.\" must display the following acknowledgement:
|
|
|
|
.\" This product includes software developed by the NetBSD
|
|
|
|
.\" Foundation, Inc. and its contributors.
|
|
|
|
.\" 4. Neither the name of The NetBSD Foundation nor the names of its
|
|
|
|
.\" contributors may be used to endorse or promote products derived
|
|
|
|
.\" from this software without specific prior written permission.
|
|
|
|
.\"
|
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
|
|
|
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
|
|
|
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
|
|
|
.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
|
|
|
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
|
|
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
|
|
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
|
|
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
|
|
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
|
|
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
|
|
.\" POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
.\"
|
|
|
|
.Dd November 8, 2000
|
|
|
|
.Dt IOP 4
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
|
|
|
.Nm iop
|
|
|
|
.Nd
|
|
|
|
.Tn I2O adapter driver
|
|
|
|
.Sh SYNOPSIS
|
|
|
|
.Cd "iop* at pci? dev ? function ?"
|
|
|
|
.Cd "iopsp*" at iop? tid ?
|
2000-11-26 20:44:02 +03:00
|
|
|
.Cd "ld*" at iop? tid ?
|
2000-11-08 22:54:12 +03:00
|
|
|
.Sh DESCRIPTION
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver provides support for
|
|
|
|
.Tn PCI
|
2000-11-09 15:51:36 +03:00
|
|
|
adapters conforming to the
|
2000-11-08 22:54:12 +03:00
|
|
|
.Tn I2O
|
|
|
|
specification, revision 1.5.
|
2000-12-11 16:15:43 +03:00
|
|
|
.Sh IOCTL INTERFACE
|
|
|
|
The following structures and constants are defined in
|
|
|
|
.Pa dev/i2o/i2ovar.h .
|
|
|
|
Note that the header
|
|
|
|
.Pa dev/i2o/i2o.h
|
|
|
|
is a prerequsite and must therefore be included beforehand.
|
|
|
|
.Bl -tag -width OTTF
|
|
|
|
.It Dv IOPIOCPT (struct ioppt)
|
|
|
|
Submit a message to the IOP and return the reply. Note that the return
|
|
|
|
value of this ioctl is not affected by completion status as indicated by the
|
|
|
|
reply.
|
|
|
|
.Bd -literal
|
|
|
|
struct ioppt {
|
|
|
|
void *pt_msg; /* pointer to message buffer */
|
|
|
|
size_t pt_msglen; /* message buffer size in bytes */
|
|
|
|
void *pt_reply; /* pointer to reply buffer */
|
|
|
|
size_t pt_replylen; /* reply buffer size in bytes */
|
|
|
|
int pt_timo; /* completion timeout in ms */
|
|
|
|
int pt_nbufs; /* number of transfers */
|
|
|
|
struct ioppt_buf pt_bufs[IOP_MAX_MSG_XFERS]; /* transfers */
|
|
|
|
};
|
|
|
|
|
|
|
|
struct ioppt_buf {
|
|
|
|
void *ptb_data; /* pointer to buffer */
|
|
|
|
size_t ptb_datalen; /* buffer size in bytes */
|
|
|
|
int ptb_out; /* non-zero if transfer is to IOP */
|
|
|
|
};
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
The minimum timeout value that may be specified is 1000ms. All other values
|
|
|
|
must not exceed the
|
|
|
|
.Nm
|
|
|
|
driver's operational limits.
|
|
|
|
.It Dv IOPIOCGLCT (struct iovec)
|
|
|
|
Return the
|
|
|
|
.Nm
|
|
|
|
driver's copy of the logical configuration table. This copy of the LCT
|
|
|
|
matches the current device configuration, but is not necessarily the latest
|
|
|
|
available version of the LCT. This ioctl may block while attempting to
|
|
|
|
acquire a lock on the LCT, and may fail if the acquisition times out.
|
|
|
|
.It Dv IOPIOCGSTATUS (struct iovec)
|
|
|
|
Request the latest available status record from the IOP. This special-case
|
|
|
|
ioctl is provided as the I2O_EXEC_STATUS_GET message does not post replies,
|
|
|
|
and can therefore not be safely issued using the IOPIOCPT ioctl.
|
|
|
|
.It Dv IOPIOCRECONFIG
|
|
|
|
Request that the
|
|
|
|
.Nm
|
|
|
|
driver scan all bus ports, retrieve the latest version of the LCT, and
|
|
|
|
attach or detach devices as necessary. Note that higher-level
|
|
|
|
reconfiguration tasks (such as logically re-scanning SCSI busses) will not
|
|
|
|
be performed by this ioctl.
|
|
|
|
.El
|
|
|
|
.Sh FILES
|
|
|
|
.Bl -tag -width /dev/iopn -compact
|
|
|
|
.It Pa /dev/iop Ns Ar u
|
|
|
|
control device for IOP unit
|
|
|
|
.Ar u
|
|
|
|
.El
|
2000-11-08 22:54:12 +03:00
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr intro 4 ,
|
|
|
|
.Xr iopsp 4 ,
|
2000-12-11 16:53:11 +03:00
|
|
|
.Xr ld 4 ,
|
|
|
|
.Xr iopctl 8
|
2000-11-08 22:54:12 +03:00
|
|
|
.Pp
|
|
|
|
http://www.i2osig.org/
|
|
|
|
.Sh AUTHOR
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver was written by Andrew Doran
|
|
|
|
.Aq ad@netbsd.org .
|
|
|
|
.Sh HISTORY
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver first appeared in
|
|
|
|
.Nx 1.6 .
|