xref: /freebsd/share/man/man4/mps.4 (revision b1866dfea3f3f142697f8e325db49b8e668fba35)
1.\"
2.\" Copyright (c) 2010 Spectra Logic Corporation
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions, and the following disclaimer,
10.\"    without modification.
11.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
12.\"    substantially similar to the "NO WARRANTY" disclaimer below
13.\"    ("Disclaimer") and any redistribution must be conditioned upon
14.\"    including a substantially similar Disclaimer requirement for further
15.\"    binary redistribution.
16.\"
17.\" NO WARRANTY
18.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
21.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22.\" HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
26.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
27.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGES.
29.\"
30.\" mps driver man page.
31.\"
32.\" Author: Ken Merry <ken@FreeBSD.org>
33.\"
34.\" $Id: //depot/SpectraBSD/head/share/man/man4/mps.4#6 $
35.\" $FreeBSD$
36.\"
37.Dd February 7, 2012
38.Dt MPS 4
39.Os
40.Sh NAME
41.Nm mps
42.Nd LSI Fusion-MPT 2 Serial Attached SCSI driver
43.Sh SYNOPSIS
44To compile this driver into your kernel,
45place the following lines in your kernel configuration file:
46.Bd -ragged -offset indent
47.Cd "device scbus"
48.Cd "device mps"
49.Ed
50.Pp
51Or, to load the driver as a module at boot, place the following line in
52.Xr loader.conf 5 :
53.Bd -literal -offset indent
54mps_load="YES"
55.Ed
56.Sh DESCRIPTION
57The
58.Nm
59driver provides support for LSI Logic Fusion-MPT 2
60.Tn SAS
61controllers and WarpDrive solid state storage cards.
62.Sh HARDWARE
63The
64.Nm
65driver supports the following controllers:
66.Pp
67.Bl -bullet -compact
68.It
69LSI Logic SAS2004 (4 Port
70.Tn SAS )
71.It
72LSI Logic SAS2008 (8 Port
73.Tn SAS )
74.It
75LSI Logic SAS2108 (8 Port
76.Tn SAS )
77.It
78LSI Logic SAS2116 (16 Port
79.Tn SAS )
80.It
81LSI Logic SAS2208 (8 Port
82.Tn SAS )
83.El
84.Sh CONFIGURATION
85To disable MSI interrupts for all
86.Nm
87driver instances, set the following tunable value in
88.Xr loader.conf 5 :
89.Bd -literal -offset indent
90hw.mps.disable_msi=1
91.Ed
92.Pp
93To disable MSI interrupts for a specific
94.Nm
95driver instance, set the following tunable value in
96.Xr loader.conf 5 :
97.Bd -literal -offset indent
98dev.mps.X.disable_msi=1
99.Ed
100.Pp
101where X is the adapter number.
102.Pp
103To disable MSI-X interrupts for all
104.Nm
105driver instances, set the following tunable value in
106.Xr loader.conf 5 :
107.Bd -literal -offset indent
108hw.mps.disable_msix=1
109.Ed
110.Pp
111To disable MSI-X interrupts for a specific
112.Nm
113driver instance, set the following tunable value in
114.Xr loader.conf 5 :
115.Bd -literal -offset indent
116dev.mps.X.disable_msix=1
117.Ed
118.Pp
119To set the maximum number of DMA chains allocated for all adapters,
120set the following variable in
121.Xr loader.conf 5 :
122.Bd -literal -offset indent
123hw.mps.max_chains=NNNN
124.Ed
125.Pp
126To set the maximum number of DMA chains allocated for a specific adapter,
127set the following variable in
128.Xr loader.conf 5 :
129.Bd -literal -offset indent
130dev.mps.X.max_chains=NNNN
131.Ed
132.Pp
133This variable may also be viewed via
134.Xr sysctl 8
135to see the maximum set for a given adapter.
136.Pp
137The current number of free chain frames may be seen via the
138dev.mps.X.chain_free
139.Xr sysctl 8
140variable.
141.Pp
142The lowest number of free chain frames may be seen via the
143dev.mps.X.chain_free_lowwater
144.Xr sysctl 8
145variable.
146.Pp
147The current number of active I/O commands is shown in the
148dev.mps.X.io_cmds_active
149.Xr sysctl 8
150variable.
151.Pp
152The maximum number of active I/O command seen since boot is shown in the
153dev.mps.X.io_cmds_highwater
154.Xr sysctl 8
155variable.
156.Sh DEBUGGING
157To enable debugging prints from the
158.Nm
159driver, set the
160.Bd -literal -offset indent
161hw.mps.X.debug_level
162.Ed
163.Pp
164variable, where X is the adapter number, either in
165.Xr loader.conf 5
166or via
167.Xr sysctl 8 .
168The following bits have the described effects:
169.Bl -tag -offset indent
170.It 0x01
171Enable informational prints.
172.It 0x02
173Enable tracing prints.
174.It 0x04
175Enable prints for driver faults.
176.It 0x08
177Enable prints for controller events.
178.El
179.Sh SEE ALSO
180.Xr cd 4 ,
181.Xr ch 4 ,
182.Xr da 4 ,
183.Xr mpt 4 ,
184.Xr pci 4 ,
185.Xr sa 4 ,
186.Xr scsi 4 ,
187.Xr targ 4 ,
188.Xr loader.conf 5 ,
189.Xr sysctl 8
190.Sh HISTORY
191The
192.Nm
193driver first appeared in
194.Fx 9.0 .
195.Sh AUTHORS
196.An -nosplit
197The
198.Nm
199driver was originally written by
200.An Scott Long Aq scottl@FreeBSD.org .
201It has been improved and tested by LSI Logic Corporation.
202This man page was written by
203.An Ken Merry Aq ken@FreeBSD.org .
204.Sh BUGS
205This driver has a couple of known shortcomings:
206.Bl -bullet -compact
207.It
208Not endian safe.
209It only works on little endian machines (e.g. amd64 and i386).
210.It
211No userland utility available (e.g.
212.Xr mptutil 8)
213.It
214The driver probes devices sequentially.
215If your system has a large number of devices, the probe will take a while.
216.El
217