freebsd-nq/usr.sbin/ncrcontrol/ncrcontrol.8
Philippe Charnier 2d7a5bff3b Use err(3).
1997-10-02 11:46:53 +00:00

291 lines
9.1 KiB
Groff

.\" Copyright (c) 1994 Wolfgang Stanglmeier. 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 ``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 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.
.\"
.\" $Id: ncrcontrol.8,v 1.6 1997/02/22 16:08:14 peter Exp $
.\"
.Dd September 16, 1994
.Dt NCRCONTROL 8
.Os FreeBSD
.Sh NAME
.Nm ncrcontrol
.Nd manually configure the ncr810/825 PCI/SCSI device driver
.Sh SYNOPSIS
.\"--------------------------------------------------------
.\" ncrcontrol [-Mcore] [-Nsystem] [-u unit] [-v] [-v] -i
.\"--------------------------------------------------------
.Nm ncrcontrol
.Op Fl M Ar core
.Op Fl N Ar system
.Op Fl u Ar unit
.Op Fl v
.Op Fl v
.Fl i
.\"--------------------------------------------------------
.\" ncrcontrol [-N system] [-u unit] [-p wait]
.\"--------------------------------------------------------
.Nm ncrcontrol
.Op Fl N Ar system
.Op Fl u Ar unit
.Op Fl p Ar wait
.\"------------------------------------------------------------
.\" ncrcontrol [-Nsystem] [-u unit] [-t target] -s name=value
.\"------------------------------------------------------------
.Nm ncrcontrol
.Op Fl N Ar system
.Op Fl u Ar unit
.Op Fl t Ar target
.Fl s
.Ar name=value
.\"------------------------------------------------------------
.\" ncrcontrol [-Mcore] [-Nsystem] [-u unit] [-t target] -d pattern
.\"------------------------------------------------------------
.Nm ncrcontrol
.Op Fl M Ar core
.Op Fl N Ar system
.Op Fl u Ar unit
.Op Fl t Ar target
.Fl d
.Ar debug
.\"------------------------------------------------------------
.\" ncrcontrol [-Nsystem] [-u unit] -w -k torture
.\"------------------------------------------------------------
.Nm ncrcontrol
.Op Fl N Ar system
.Op Fl u Ar unit
.Fl w
.Fl k
.Ar torture
.\"
.\"=====================================================================
.\"
.Sh DESCRIPTION
The
.Nm
command symbolically displays the contents of the ncr810/ncr825
pci/scsi driver control structure.
There are a number of output formats,
depending on the options for the information presented.
It may be used to set some values, too.
.\"--------------------------------------------------------
.\" ncrcontrol [-Mcore] [-Nsystem] [-u unit] [-v] [-v] -i
.\"--------------------------------------------------------
The first form of the command displays an overview of the
connected targets. The
.Fl v
requests a verbose output.
.\"--------------------------------------------------------
.\" ncrcontrol [-N system] [-u unit] [-p wait]
.\"--------------------------------------------------------
Using the second form, with a
.Ar wait
interval specified,
.Nm
will continuously display the information regarding data
traffic on the selected scsi bus.
.\"------------------------------------------------------------
.\" ncrcontrol [-Nsystem] [-u unit] [-t target] -s name=value
.\"------------------------------------------------------------
The third form sets a configuration value for one or all
targets of a selected scsi bus.
It normally is not needed, if the device driver options are
correctly set in kernel configuration.
.\"------------------------------------------------------------
.\" ncrcontrol [-M core] [-N system] [-u unit] [-t target] -w -d pattern
.\"------------------------------------------------------------
The forth form presents the content of the drivers control
structure. By the
.Ar pattern
certain parts of the output can be enabled/disabled.
It's only used to debug the driver.
.\"------------------------------------------------------------
.\" ncrcontrol [-N system] [-u unit] -w -k torture
.\"------------------------------------------------------------
With the last form certain driver problems can be forced.
THIS MAY CRASH YOUR SYSTEM.
It's only used to debug the driver.
.\"
.\"=====================================================================
.\"
.Pp
The options have the following meaning:
.Bl -tag -width flag
.\"------------------------------------------------------------
.\" -d pattern
.\"------------------------------------------------------------
.It Fl d
Show the content of the drivers control structure.
The
.Ar pattern
selects the fields, which are displayed. With
.Fl d?
you can get a list of valid flags.
.\"------------------------------------------------------------
.\" -i
.\"------------------------------------------------------------
.It Fl i
Show the configuration state of the connected targets.
With the
.Fl v
option you can request a more verbose information.
.\"------------------------------------------------------------
.\" -k torture
.\"------------------------------------------------------------
.It Fl k
Force certain driver problems to check the error recovery
functions. This option should only be used by the developers.
With
.Fl k?
you can get a list of possible tortures.
This option requires the
.Fl w
option to be set.
.\"------------------------------------------------------------
.\" -M core
.\"------------------------------------------------------------
.It Fl M
Extract values associated with the name list from the specified core
instead of the default
.Pa /dev/kmem .
.\"------------------------------------------------------------
.\" -N system
.\"------------------------------------------------------------
.It Fl N
Extract the name list from the specified system instead of the default
.Pa /kernel .
.\"------------------------------------------------------------
.\" -p wait
.\"------------------------------------------------------------
When
.Nm
is invoked with a
.Ar wait
interval argument, it displays a running count of statistics related to
the transfers on the selected scsi bus.
This display consists of the number of transfers and number of transferred
bytes for the controller and for each connected target.
(NOT YET COMPLETE)
.\"------------------------------------------------------------
.\" -s field=value
.\"------------------------------------------------------------
.It Fl s
Set a configuration value for one or more targets.
One ore more targets can be selected by the
.Fl t
option. If no target is selected, then the field is set
for all connect targets.
(NOT YET COMPLETE)
.\"------------------------------------------------------------
.\" -t target
.\"------------------------------------------------------------
.It Fl t
Select the target for the
.Fl s
option. This option may be given more than one time.
.\"------------------------------------------------------------
.\" -u unit
.\"------------------------------------------------------------
.It Fl u
Select the controller unit.
If this option is not given, then controller 0 is assumed.
Most systems have only one controller.
.\"------------------------------------------------------------
.\" -v
.\"------------------------------------------------------------
.It Fl v
Enable verbose output for the
.Fl i
option.
.\"------------------------------------------------------------
.\" -w
.\"------------------------------------------------------------
.It Fl w
Wizard option.
Enable the usage of the
.Fl k
option.
.\"
.\"=====================================================================
.\"
.Pp
(NOT YET COMPLETE)
.\"
.\"=====================================================================
.\"
.Sh SEE ALSO
.Xr scsi 4 ,
.Xr scsi 8
.\"
.\"=====================================================================
.\"
.Sh HISTORY
The
.Nm
command was hacked for
.Bx 386
and ported to version 1.1 of
.Bx Free
by
.An Wolfgang Stanglmeier Aq wolf@dentaro.GUN.de .
It was ported to
.Bx Net
by
.An Charles M. Hannum Aq mycroft@gnu.ai.mit.edu
and to version 2.0 of
.Bx Free
by
.An Stefan Esser Aq se@zpr.Uni-Koeln.DE .
.\"
.\"=====================================================================
.\"
.Sh BUGS
The
.Nm
was hacked as a debugging tool for the ncr810 driver.
It should be deleted sometimes.
There should be a general tool to change device driver options
on the fly.
The statistical data should be gathered by the generic scsi driver.