1998-10-12 00:31:42 +00:00
|
|
|
.\"
|
|
|
|
.\" Copyright (c) 1998 Kenneth D. Merry.
|
|
|
|
.\" All rights reserved.
|
|
|
|
.\"
|
|
|
|
.\" 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. The name of the author may not be used to endorse or promote products
|
|
|
|
.\" derived from this software without specific prior written permission.
|
|
|
|
.\"
|
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
|
|
|
|
.\"
|
1999-08-28 00:22:10 +00:00
|
|
|
.\" $FreeBSD$
|
1998-10-12 00:31:42 +00:00
|
|
|
.\"
|
|
|
|
.Dd October 10, 1998
|
|
|
|
.Dt XPT 4
|
2001-07-10 15:31:11 +00:00
|
|
|
.Os
|
1998-10-12 00:31:42 +00:00
|
|
|
.Sh NAME
|
|
|
|
.Nm xpt
|
|
|
|
.Nd CAM transport layer interface
|
|
|
|
.Sh SYNOPSIS
|
|
|
|
None.
|
|
|
|
.Sh DESCRIPTION
|
|
|
|
The
|
2000-11-20 18:41:33 +00:00
|
|
|
.Nm
|
1998-10-12 00:31:42 +00:00
|
|
|
driver provides a way for userland applications to issue certain CAM CCBs
|
2001-07-14 19:41:16 +00:00
|
|
|
to the kernel.
|
1998-10-12 00:31:42 +00:00
|
|
|
.Pp
|
|
|
|
Since the
|
2000-11-20 18:41:33 +00:00
|
|
|
.Nm
|
1998-10-12 00:31:42 +00:00
|
|
|
driver allows direct access to the CAM subsystem, system administrators
|
2004-07-03 18:29:24 +00:00
|
|
|
should exercise caution when granting access to this driver.
|
|
|
|
If used
|
1998-10-12 00:31:42 +00:00
|
|
|
improperly, this driver can allow userland applications to crash a machine
|
|
|
|
or cause data loss.
|
|
|
|
.Sh KERNEL CONFIGURATION
|
|
|
|
There is no kernel configuration required for the
|
2000-11-20 18:41:33 +00:00
|
|
|
.Nm
|
2004-07-03 18:29:24 +00:00
|
|
|
driver.
|
|
|
|
It is enabled when
|
1998-10-12 00:31:42 +00:00
|
|
|
.Tn SCSI
|
2004-07-03 18:29:24 +00:00
|
|
|
support is enabled in the kernel.
|
|
|
|
There is one instance of the xpt driver
|
|
|
|
per CAM transport layer instance.
|
|
|
|
Since there is currently only one CAM
|
1998-10-12 00:31:42 +00:00
|
|
|
transport layer, there will only be one instance of this driver.
|
|
|
|
.Sh IOCTLS
|
|
|
|
.Bl -tag -width 01234567890123
|
|
|
|
.It CAMIOCOMMAND
|
|
|
|
This ioctl takes certain kinds of CAM CCBs and passes them through to the
|
2004-07-03 18:29:24 +00:00
|
|
|
CAM transport layer for action.
|
|
|
|
Only the following CCB types are
|
1998-10-12 00:31:42 +00:00
|
|
|
supported:
|
|
|
|
.Pp
|
|
|
|
.Bl -tag -width XPT_DEV_MATCH -compact
|
|
|
|
.It XPT_SCAN_BUS
|
|
|
|
.It XPT_RESET_BUS
|
|
|
|
.It XPT_SCAN_LUN
|
|
|
|
.It XPT_ENG_INQ
|
|
|
|
.It XPT_ENG_EXEC
|
|
|
|
.It XPT_DEBUG
|
|
|
|
.It XPT_DEV_MATCH
|
2000-10-30 23:33:39 +00:00
|
|
|
.It XPT_PATH_INQ
|
1998-10-12 00:31:42 +00:00
|
|
|
.El
|
|
|
|
.Pp
|
|
|
|
The above CCBs are the only ones supported since it makes more sense to
|
|
|
|
send them through a generic passthrough device rather than a passthrough
|
|
|
|
device tied to a particular underlying
|
|
|
|
.Tn SCSI
|
|
|
|
device.
|
|
|
|
.It CAMGETPASSTHRU
|
|
|
|
This ioctl takes an XPT_GDEVLIST CCB, and returns the passthrough device
|
|
|
|
corresponding to the device in question.
|
|
|
|
.El
|
|
|
|
.Sh FILES
|
2000-12-29 09:18:45 +00:00
|
|
|
.Bl -tag -width /dev/xpt0 -compact
|
1998-10-12 00:31:42 +00:00
|
|
|
.It Pa /dev/xpt0
|
|
|
|
Character device node for the
|
2000-11-20 18:41:33 +00:00
|
|
|
.Nm
|
2001-07-14 19:41:16 +00:00
|
|
|
driver.
|
1998-10-12 00:31:42 +00:00
|
|
|
.El
|
|
|
|
.Sh DIAGNOSTICS
|
|
|
|
None.
|
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr cam 3 ,
|
1998-10-16 00:26:28 +00:00
|
|
|
.Xr cam_cdbparse 3 ,
|
1998-10-12 00:31:42 +00:00
|
|
|
.Xr pass 4 ,
|
1998-10-16 00:26:28 +00:00
|
|
|
.Xr camcontrol 8
|
1998-10-12 00:31:42 +00:00
|
|
|
.Sh HISTORY
|
|
|
|
The CAM transport layer driver first appeared in
|
|
|
|
.Fx 3.0 .
|
|
|
|
.Sh AUTHORS
|
2001-02-01 16:38:02 +00:00
|
|
|
.An Kenneth Merry Aq ken@FreeBSD.org
|