2014-05-02 20:25:09 +00:00
|
|
|
.\"
|
|
|
|
.\" Copyright (c) 2010 Spectra Logic Corporation
|
|
|
|
.\" Copyright (c) 2014 LSI Corp
|
|
|
|
.\" 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,
|
|
|
|
.\" without modification.
|
|
|
|
.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
|
|
|
|
.\" substantially similar to the "NO WARRANTY" disclaimer below
|
|
|
|
.\" ("Disclaimer") and any redistribution must be conditioned upon
|
|
|
|
.\" including a substantially similar Disclaimer requirement for further
|
|
|
|
.\" binary redistribution.
|
|
|
|
.\"
|
|
|
|
.\" NO WARRANTY
|
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
|
|
.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
|
|
.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
|
|
|
|
.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
|
|
.\" HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES.
|
|
|
|
.\"
|
|
|
|
.\" mpr driver man page.
|
|
|
|
.\"
|
|
|
|
.\" Author: Ken Merry <ken@FreeBSD.org>
|
|
|
|
.\" Author: Stephen McConnell <stephen.mcconnell@lsi.com>
|
|
|
|
.\"
|
|
|
|
.\" $Id$
|
|
|
|
.\" $FreeBSD$
|
|
|
|
.\"
|
2014-05-02 21:14:28 +00:00
|
|
|
.Dd May 2, 2014
|
2014-05-02 20:25:09 +00:00
|
|
|
.Dt MPR 4
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
|
|
|
.Nm mpr
|
|
|
|
.Nd "LSI Fusion-MPT 3 IT/IR 12Gb/s Serial Attached SCSI/SATA driver"
|
|
|
|
.Sh SYNOPSIS
|
|
|
|
To compile this driver into the kernel, place the following lines in your
|
|
|
|
kernel configuration file:
|
|
|
|
.Bd -ragged -offset indent
|
|
|
|
.Cd "device pci"
|
|
|
|
.Cd "device scbus"
|
|
|
|
.Cd "device mpr"
|
|
|
|
.Ed
|
|
|
|
.Pp
|
2014-05-02 21:14:28 +00:00
|
|
|
Alternatively, to load the driver as a
|
|
|
|
module at boot time, place the following line in
|
2014-05-02 20:25:09 +00:00
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
mpr_load="YES"
|
|
|
|
.Ed
|
|
|
|
.Sh DESCRIPTION
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver provides support for LSI Fusion-MPT 3 IT/IR
|
|
|
|
.Tn SAS
|
|
|
|
controllers.
|
|
|
|
.Sh HARDWARE
|
|
|
|
The following controllers are supported by the
|
|
|
|
.Nm
|
|
|
|
driver
|
|
|
|
.Pp
|
|
|
|
.Bl -bullet -compact
|
|
|
|
.It
|
|
|
|
LSI SAS 3004 (4 Port SAS)
|
|
|
|
.It
|
|
|
|
LSI SAS 3008 (8 Port SAS)
|
|
|
|
.It
|
|
|
|
LSI SAS 3108 (8 Port SAS)
|
|
|
|
.El
|
|
|
|
.Sh CONFIGURATION
|
|
|
|
To disable MSI interrupts for all
|
|
|
|
.Nm
|
|
|
|
driver instances, set the following tunable value in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
hw.mpr.disable_msi=1
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
To disable MSI interrupts for a specific
|
|
|
|
.Nm
|
|
|
|
driver instance, set the following tunable value in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
dev.mpr.X.disable_msi=1
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
where X is the adapter number.
|
|
|
|
.Pp
|
|
|
|
To disable MSI-X interrupts for all
|
|
|
|
.Nm
|
|
|
|
driver instances, set the following tunable value in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
hw.mpr.disable_msix=1
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
To disable MSI-X interrupts for a specific
|
|
|
|
.Nm
|
|
|
|
driver instance, set the following tunable value in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
dev.mpr.X.disable_msix=1
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
To set the maximum number of DMA chains allocated for all adapters, set
|
|
|
|
the following variable in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
hw.mpr.max_chains=NNNN
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
To set the maximum number of DMA chains allocated for a specific adapter,
|
|
|
|
set the following variable in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
dev.mpr.X.max_chains=NNNN
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
This variable may also be viewed via
|
|
|
|
.Xr sysctl 8
|
|
|
|
to see the maximum set for a given adapter.
|
|
|
|
.Pp
|
|
|
|
The current number of free chain frames may be seen via the
|
|
|
|
dev.mpr.X.chain_free
|
|
|
|
.Xr sysctl 8
|
|
|
|
variable.
|
|
|
|
.Pp
|
|
|
|
The lowest number of free chain frames may be seen via the
|
|
|
|
dev.mpr.X.chain_free_lowwater
|
|
|
|
.Xr sysctl 8
|
|
|
|
variable.
|
|
|
|
.Pp
|
|
|
|
The current number of active I/O commands is shown in the
|
|
|
|
dev.mpr.X.io_cmds_active
|
|
|
|
.Xr sysctl 8
|
|
|
|
variable.
|
|
|
|
.Pp
|
|
|
|
The maximum number of active I/O commands seen since boot is shown in the
|
|
|
|
dev.mpr.X.io_cmds_highwater
|
|
|
|
.Xr sysctl 8
|
|
|
|
variable.
|
|
|
|
.Pp
|
|
|
|
Devices can be excluded from
|
|
|
|
.Nm
|
|
|
|
control for all adapters by setting the following variable in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
hw.mpr.exclude_ids=Y
|
|
|
|
.Ed
|
|
|
|
.Pp
|
2014-05-02 21:14:28 +00:00
|
|
|
where Y is the target ID of the device.
|
|
|
|
If more than one device is to be
|
2014-05-02 20:25:09 +00:00
|
|
|
excluded, target ID's are separated by commas.
|
|
|
|
.Pp
|
|
|
|
Devices can be excluded from
|
|
|
|
.Nm
|
|
|
|
control for a specific adapter by setting the following variable in
|
|
|
|
.Xr loader.conf 5 :
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
dev.mpr.X.exclude_ids=Y
|
|
|
|
.Ed
|
|
|
|
.Pp
|
2014-05-02 21:14:28 +00:00
|
|
|
where X is the adapter number and Y is the target ID of the device.
|
|
|
|
If more
|
2014-05-02 20:25:09 +00:00
|
|
|
than one device is to be excluded, target ID's are separated by commas.
|
|
|
|
.Sh DEBUGGING
|
|
|
|
To enable debugging prints from the
|
|
|
|
.Nm
|
|
|
|
driver, set the
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
hw.mpr.X.debug_level
|
|
|
|
.Ed
|
|
|
|
.Pp
|
|
|
|
variable, where X is the adapter number, either in
|
|
|
|
.Xr loader.conf 5
|
|
|
|
or via
|
|
|
|
.Xr sysctl 8 .
|
|
|
|
The following bits have the described effects:
|
|
|
|
.Bd -literal -offset indent
|
|
|
|
0x0001 Enable informational prints.
|
|
|
|
0x0002 Enable prints for driver faults.
|
|
|
|
0x0004 Enable prints for controller events.
|
|
|
|
0x0008 Enable prints for controller logging.
|
|
|
|
0x0010 Enable prints for tracing recovery operations.
|
|
|
|
0x0020 Enable prints for parameter errors and programming bugs.
|
|
|
|
0x0040 Enable prints for system initialization operations.
|
|
|
|
0x0080 Enable prints for more detailed information.
|
|
|
|
0x0100 Enable prints for user-generated commands.
|
|
|
|
0x0200 Enable prints for device mapping.
|
|
|
|
0x0400 Enable prints for tracing through driver functions.
|
|
|
|
.Ed
|
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr cam 4 ,
|
|
|
|
.Xr cd 4 ,
|
|
|
|
.Xr ch 4 ,
|
|
|
|
.Xr da 4 ,
|
|
|
|
.Xr mps 4 ,
|
2014-05-02 21:14:28 +00:00
|
|
|
.Xr mpt 4 ,
|
2014-05-02 20:25:09 +00:00
|
|
|
.Xr pci 4 ,
|
|
|
|
.Xr sa 4 ,
|
|
|
|
.Xr scsi 4 ,
|
|
|
|
.Xr targ 4 ,
|
|
|
|
.Xr loader.conf 5 ,
|
|
|
|
.Xr sysctl 8
|
|
|
|
.Sh HISTORY
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver first appeared in FreeBSD 9.3.
|
|
|
|
.Sh AUTHORS
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
driver was originally written by
|
|
|
|
.An -nosplit
|
|
|
|
.An Scott Long Aq scottl@FreeBSD.org .
|
|
|
|
It has been improved and tested by LSI Corporation.
|
|
|
|
.Pp
|
|
|
|
This man page was written by
|
|
|
|
.An Ken Merry Aq ken@FreeBSD.org
|
|
|
|
with additional input from
|
|
|
|
.An Stephen McConnell Aq stephen.mcconnell@lsi.com .
|