9ccf64d6d0b191d96343d9be6c64041e3e900925
[dragonfly.git] / share / man / man4 / mps.4
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: src/share/man/man4/mps.4,v 1.12 2013/01/04 00:45:41 svnexp Exp $
36 .\"
37 .Dd August 14, 2013
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
44 To compile this driver into your kernel,
45 place 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
51 Or, to load the driver as a module at boot, place the following line in
52 .Xr loader.conf 5 :
53 .Bd -literal -offset indent
54 mps_load="YES"
55 .Ed
56 .Sh DESCRIPTION
57 The
58 .Nm
59 driver provides support for LSI Logic Fusion-MPT 2
60 .Tn SAS
61 controllers and WarpDrive solid state storage cards.
62 .Sh HARDWARE
63 The
64 .Nm
65 driver supports the following hardware:
66 .Pp
67 .Bl -bullet -compact
68 .It
69 LSI Logic SAS2004 (4 Port
70 .Tn SAS )
71 .It
72 LSI Logic SAS2008 (8 Port
73 .Tn SAS )
74 .It
75 LSI Logic SAS2108 (8 Port
76 .Tn SAS )
77 .It
78 LSI Logic SAS2116 (16 Port
79 .Tn SAS )
80 .It
81 LSI Logic SAS2208 (8 Port
82 .Tn SAS )
83 .It
84 LSI Logic SAS2308 (8 Port
85 .Tn SAS )
86 .It
87 LSI Logic SSS6200 Solid State Storage
88 .It
89 Intel Integrated RAID Module RMS25JB040
90 .It
91 Intel Integrated RAID Module RMS25JB080
92 .It
93 Intel Integrated RAID Module RMS25KB040
94 .It
95 Intel Integrated RAID Module RMS25KB080
96 .El
97 .Sh CONFIGURATION
98 To disable MSI interrupts for all
99 .Nm
100 driver instances, set the following tunable value in
101 .Xr loader.conf 5 :
102 .Bd -literal -offset indent
103 hw.mps.msi.enable=0
104 .Ed
105 .Pp
106 .\"To disable MSI-X interrupts for all
107 .\".Nm
108 .\"driver instances, set the following tunable value in
109 .\".Xr loader.conf 5 :
110 .\".Bd -literal -offset indent
111 .\"hw.mps.disable_msix=1
112 .\".Ed
113 .\".Pp
114 .\"To disable MSI-X interrupts for a specific
115 .\".Nm
116 .\"driver instance, set the following tunable value in
117 .\".Xr loader.conf 5 :
118 .\".Bd -literal -offset indent
119 .\"hw.mpsX.disable_msix=1
120 .\".Ed
121 .\".Pp
122 To set the maximum number of DMA chains allocated for all adapters,
123 set the following variable in
124 .Xr loader.conf 5 :
125 .Bd -literal -offset indent
126 hw.mps.max_chains=NNNN
127 .Ed
128 .Pp
129 To set the maximum number of DMA chains allocated for a specific adapter,
130 set the following variable in
131 .Xr loader.conf 5 :
132 .Bd -literal -offset indent
133 hw.mpsX.max_chains=NNNN
134 .Ed
135 .Pp
136 This variable may also be viewed via
137 .Xr sysctl 8
138 to see the maximum set for a given adapter.
139 .Pp
140 The current number of free chain frames may be seen via the
141 hw.mpsX.chain_free
142 .Xr sysctl 8
143 variable.
144 .Pp
145 The lowest number of free chain frames may be seen via the
146 hw.mpsX.chain_free_lowwater
147 .Xr sysctl 8
148 variable.
149 .Pp
150 The current number of active I/O commands is shown in the
151 hw.mpsX.io_cmds_active
152 .Xr sysctl 8
153 variable.
154 .Pp
155 The maximum number of active I/O command seen since boot is shown in the
156 hw.mpsX.io_cmds_highwater
157 .Xr sysctl 8
158 variable.
159 .Sh DEBUGGING
160 To enable debugging prints from the
161 .Nm
162 driver, set the
163 .Bd -literal -offset indent
164 hw.mps.X.debug_level
165 .Ed
166 .Pp
167 variable, where X is the adapter number, either in
168 .Xr loader.conf 5
169 or via
170 .Xr sysctl 8 .
171 The following bits have the described effects:
172 .Bl -tag -offset indent -width "0x01"
173 .It 0x01
174 Enable informational prints.
175 .It 0x02
176 Enable tracing prints.
177 .It 0x04
178 Enable prints for driver faults.
179 .It 0x08
180 Enable prints for controller events.
181 .El
182 .Sh SEE ALSO
183 .Xr cd 4 ,
184 .Xr ch 4 ,
185 .Xr da 4 ,
186 .Xr mpt 4 ,
187 .Xr pci 4 ,
188 .Xr sa 4 ,
189 .Xr scsi 4 ,
190 .Xr targ 4 ,
191 .Xr loader.conf 5 ,
192 .Xr sysctl 8
193 .Sh HISTORY
194 The
195 .Nm
196 driver first appeared in
197 .Fx 9.0 .
198 .Sh AUTHORS
199 .An -nosplit
200 The
201 .Nm
202 driver was originally written by
203 .An Scott Long Aq Mt scottl@FreeBSD.org .
204 It has been improved and tested by LSI Logic Corporation.
205 This man page was written by
206 .An Ken Merry Aq Mt ken@FreeBSD.org .
207 .Sh BUGS
208 This driver has a couple of known shortcomings:
209 .Bl -bullet -compact
210 .It
211 No userland utility available (e.g.
212 .Xr mptutil 8 ) .
213 .It
214 The driver probes devices sequentially.
215 If your system has a large number of devices, the probe will take a while.
216 .El