xref: /freebsd/share/man/man4/mpr.4 (revision cfd6fd5ad186dcb66d4014e811dc7d9a4f7348bc)
1991554f2SKenneth D. Merry.\"
2991554f2SKenneth D. Merry.\" Copyright (c) 2010 Spectra Logic Corporation
3991554f2SKenneth D. Merry.\" Copyright (c) 2014 LSI Corp
4327f2e6cSStephen McConnell.\" Copyright (c) 2015-2017 Avago Technologies
5327f2e6cSStephen McConnell.\" Copyright (c) 2015-2017 Broadcom Ltd.
6991554f2SKenneth D. Merry.\" All rights reserved.
7991554f2SKenneth D. Merry.\"
8991554f2SKenneth D. Merry.\" Redistribution and use in source and binary forms, with or without
9991554f2SKenneth D. Merry.\" modification, are permitted provided that the following conditions
10991554f2SKenneth D. Merry.\" are met:
11991554f2SKenneth D. Merry.\" 1. Redistributions of source code must retain the above copyright
12991554f2SKenneth D. Merry.\"    notice, this list of conditions, and the following disclaimer,
13991554f2SKenneth D. Merry.\"    without modification.
14991554f2SKenneth D. Merry.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
15991554f2SKenneth D. Merry.\"    substantially similar to the "NO WARRANTY" disclaimer below
16991554f2SKenneth D. Merry.\"    ("Disclaimer") and any redistribution must be conditioned upon
17991554f2SKenneth D. Merry.\"    including a substantially similar Disclaimer requirement for further
18991554f2SKenneth D. Merry.\"    binary redistribution.
19991554f2SKenneth D. Merry.\"
20991554f2SKenneth D. Merry.\" NO WARRANTY
21991554f2SKenneth D. Merry.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22991554f2SKenneth D. Merry.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23991554f2SKenneth D. Merry.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
24991554f2SKenneth D. Merry.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25991554f2SKenneth D. Merry.\" HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26991554f2SKenneth D. Merry.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27991554f2SKenneth D. Merry.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28991554f2SKenneth D. Merry.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
29991554f2SKenneth D. Merry.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
30991554f2SKenneth D. Merry.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31991554f2SKenneth D. Merry.\" POSSIBILITY OF SUCH DAMAGES.
32991554f2SKenneth D. Merry.\"
33991554f2SKenneth D. Merry.\" mpr driver man page.
34991554f2SKenneth D. Merry.\"
35991554f2SKenneth D. Merry.\" Author: Ken Merry <ken@FreeBSD.org>
36a5b31071SStephen McConnell.\" Author: Stephen McConnell <slm@FreeBSD.org>
37991554f2SKenneth D. Merry.\"
38991554f2SKenneth D. Merry.\" $Id$
39991554f2SKenneth D. Merry.\" $FreeBSD$
40991554f2SKenneth D. Merry.\"
41327f2e6cSStephen McConnell.Dd May 25, 2017
42991554f2SKenneth D. Merry.Dt MPR 4
43991554f2SKenneth D. Merry.Os
44991554f2SKenneth D. Merry.Sh NAME
45991554f2SKenneth D. Merry.Nm mpr
4667feec50SStephen McConnell.Nd "LSI Fusion-MPT 3/3.5 IT/IR 12Gb/s Serial Attached SCSI/SATA/PCIe driver"
47991554f2SKenneth D. Merry.Sh SYNOPSIS
48a5b31071SStephen McConnellTo compile this driver into the kernel, place these lines in the kernel
49a5b31071SStephen McConnellconfiguration file:
50991554f2SKenneth D. Merry.Bd -ragged -offset indent
51991554f2SKenneth D. Merry.Cd "device pci"
52991554f2SKenneth D. Merry.Cd "device scbus"
53991554f2SKenneth D. Merry.Cd "device mpr"
54991554f2SKenneth D. Merry.Ed
55991554f2SKenneth D. Merry.Pp
56a5b31071SStephen McConnellThe driver can be loaded as a module at boot time by placing this line in
57991554f2SKenneth D. Merry.Xr loader.conf 5 :
58991554f2SKenneth D. Merry.Bd -literal -offset indent
59991554f2SKenneth D. Merrympr_load="YES"
60991554f2SKenneth D. Merry.Ed
61991554f2SKenneth D. Merry.Sh DESCRIPTION
62991554f2SKenneth D. MerryThe
63991554f2SKenneth D. Merry.Nm
64a5b31071SStephen McConnelldriver provides support for Broadcom Ltd./Avago Tech (LSI)
6567feec50SStephen McConnellFusion-MPT 3/3.5 IT/IR
6667feec50SStephen McConnell.Tn SAS/PCIe
67991554f2SKenneth D. Merrycontrollers.
68991554f2SKenneth D. Merry.Sh HARDWARE
69a5b31071SStephen McConnellThese controllers are supported by the
70991554f2SKenneth D. Merry.Nm
71d3e6a7f8SChristian Bruefferdriver:
72991554f2SKenneth D. Merry.Pp
73991554f2SKenneth D. Merry.Bl -bullet -compact
74991554f2SKenneth D. Merry.It
75a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3004 (4 Port SAS)
76991554f2SKenneth D. Merry.It
77a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3008 (8 Port SAS)
78991554f2SKenneth D. Merry.It
79a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3108 (8 Port SAS)
80a5b31071SStephen McConnell.It
81a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3216 (16 Port SAS)
82a5b31071SStephen McConnell.It
83a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3224 (24 Port SAS)
8467feec50SStephen McConnell.It
8567feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3316 (16 Port SAS)
8667feec50SStephen McConnell.It
8767feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3324 (24 Port SAS)
8867feec50SStephen McConnell.It
8967feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3408 (8 Port SAS/PCIe)
9067feec50SStephen McConnell.It
9167feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3416 (16 Port SAS/PCIe)
9267feec50SStephen McConnell.It
9367feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3508 (8 Port SAS/PCIe)
9467feec50SStephen McConnell.It
9567feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3516 (16 Port SAS/PCIe)
9667feec50SStephen McConnell.It
9767feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3616 (16 Port SAS/PCIe)
9867feec50SStephen McConnell.It
9967feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3708 (8 Port SAS/PCIe)
10067feec50SStephen McConnell.It
10167feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3716 (16 Port SAS/PCIe)
102991554f2SKenneth D. Merry.El
103991554f2SKenneth D. Merry.Sh CONFIGURATION
104a5b31071SStephen McConnellIn all tunable descriptions below, X represents the adapter number.
105a5b31071SStephen McConnell.Pp
106991554f2SKenneth D. MerryTo disable MSI interrupts for all
107991554f2SKenneth D. Merry.Nm
108a5b31071SStephen McConnelldriver instances, set this tunable value in
109991554f2SKenneth D. Merry.Xr loader.conf 5 :
110991554f2SKenneth D. Merry.Bd -literal -offset indent
111991554f2SKenneth D. Merryhw.mpr.disable_msi=1
112991554f2SKenneth D. Merry.Ed
113991554f2SKenneth D. Merry.Pp
114991554f2SKenneth D. MerryTo disable MSI interrupts for a specific
115991554f2SKenneth D. Merry.Nm
116a5b31071SStephen McConnelldriver instance, set this tunable value in
117991554f2SKenneth D. Merry.Xr loader.conf 5 :
118991554f2SKenneth D. Merry.Bd -literal -offset indent
119991554f2SKenneth D. Merrydev.mpr.X.disable_msi=1
120991554f2SKenneth D. Merry.Ed
121991554f2SKenneth D. Merry.Pp
122991554f2SKenneth D. MerryTo disable MSI-X interrupts for all
123991554f2SKenneth D. Merry.Nm
124a5b31071SStephen McConnelldriver instances, set this tunable value in
125991554f2SKenneth D. Merry.Xr loader.conf 5 :
126991554f2SKenneth D. Merry.Bd -literal -offset indent
127991554f2SKenneth D. Merryhw.mpr.disable_msix=1
128991554f2SKenneth D. Merry.Ed
129991554f2SKenneth D. Merry.Pp
130991554f2SKenneth D. MerryTo disable MSI-X interrupts for a specific
131991554f2SKenneth D. Merry.Nm
132a5b31071SStephen McConnelldriver instance, set this tunable value in
133991554f2SKenneth D. Merry.Xr loader.conf 5 :
134991554f2SKenneth D. Merry.Bd -literal -offset indent
135991554f2SKenneth D. Merrydev.mpr.X.disable_msix=1
136991554f2SKenneth D. Merry.Ed
137991554f2SKenneth D. Merry.Pp
138991554f2SKenneth D. MerryTo set the maximum number of DMA chains allocated for all adapters, set
139a5b31071SStephen McConnellthis tunable in
140991554f2SKenneth D. Merry.Xr loader.conf 5 :
141991554f2SKenneth D. Merry.Bd -literal -offset indent
142991554f2SKenneth D. Merryhw.mpr.max_chains=NNNN
143991554f2SKenneth D. Merry.Ed
144991554f2SKenneth D. Merry.Pp
145991554f2SKenneth D. MerryTo set the maximum number of DMA chains allocated for a specific adapter,
146a5b31071SStephen McConnellset this tunable in
147991554f2SKenneth D. Merry.Xr loader.conf 5 :
148991554f2SKenneth D. Merry.Bd -literal -offset indent
149991554f2SKenneth D. Merrydev.mpr.X.max_chains=NNNN
150991554f2SKenneth D. Merry.Ed
151991554f2SKenneth D. Merry.Pp
152a5b31071SStephen McConnellThe default max_chains value is 2048.
153991554f2SKenneth D. Merry.Pp
154a5b31071SStephen McConnellThe current number of free chain frames is stored in the
155991554f2SKenneth D. Merrydev.mpr.X.chain_free
156991554f2SKenneth D. Merry.Xr sysctl 8
157991554f2SKenneth D. Merryvariable.
158991554f2SKenneth D. Merry.Pp
159a5b31071SStephen McConnellThe lowest number of free chain frames seen since boot is stored in the
160991554f2SKenneth D. Merrydev.mpr.X.chain_free_lowwater
161991554f2SKenneth D. Merry.Xr sysctl 8
162991554f2SKenneth D. Merryvariable.
163991554f2SKenneth D. Merry.Pp
164a5b31071SStephen McConnellThe number of times that chain frame allocations have failed since boot is
165a5b31071SStephen McConnellstored in the
166a5b31071SStephen McConnelldev.mpr.X.chain_alloc_fail
167a5b31071SStephen McConnell.Xr sysctl 8
168a5b31071SStephen McConnellvariable.
169a5b31071SStephen McConnellThis can be used to determine whether the max_chains tunable should be
170a5b31071SStephen McConnellincreased to help performance.
171a5b31071SStephen McConnell.Pp
172991554f2SKenneth D. MerryThe current number of active I/O commands is shown in the
173991554f2SKenneth D. Merrydev.mpr.X.io_cmds_active
174991554f2SKenneth D. Merry.Xr sysctl 8
175991554f2SKenneth D. Merryvariable.
17632b0a21eSStephen McConnell.Pp
17767feec50SStephen McConnellThe current number of free PRP pages is stored in the
17867feec50SStephen McConnelldev.mpr.X.prp_pages_free
17967feec50SStephen McConnell.Xr sysctl 8
18067feec50SStephen McConnellvariable.
18167feec50SStephen McConnellPRP pages are used by NVMe devices for I/O transfers, much like Scatter/Gather
18267feec50SStephen McConnelllists.
18367feec50SStephen McConnell.Pp
18467feec50SStephen McConnellThe lowest number of free PRP pages seen since boot is stored in the
18567feec50SStephen McConnelldev.mpr.X.prp_pages_free_lowwater
18667feec50SStephen McConnell.Xr sysctl 8
18767feec50SStephen McConnellvariable.
18867feec50SStephen McConnell.Pp
18967feec50SStephen McConnellThe number of times that PRP page allocations have failed since boot is
19067feec50SStephen McConnellstored in the
19167feec50SStephen McConnelldev.mpr.X.prp_page_alloc_fail
19267feec50SStephen McConnell.Xr sysctl 8
19367feec50SStephen McConnellvariable.
19467feec50SStephen McConnell.Pp
19532b0a21eSStephen McConnellTo set the maximum number of pages that will be used per I/O for all adapters,
19632b0a21eSStephen McConnellset this tunable in
19732b0a21eSStephen McConnell.Xr loader.conf 5 :
19832b0a21eSStephen McConnell.Bd -literal -offset indent
19932b0a21eSStephen McConnellhw.mpr.max_io_pages=NNNN
20032b0a21eSStephen McConnell.Ed
20132b0a21eSStephen McConnell.Pp
20232b0a21eSStephen McConnellTo set the maximum number of pages that will be used per I/O for a specific
20332b0a21eSStephen McConnelladapter, set this tunable in
20432b0a21eSStephen McConnell.Xr loader.conf 5 :
20532b0a21eSStephen McConnell.Bd -literal -offset indent
20632b0a21eSStephen McConnelldev.mpr.X.max_io_pages=NNNN
20732b0a21eSStephen McConnell.Ed
20832b0a21eSStephen McConnell.Pp
20932b0a21eSStephen McConnellThe default max_io_pages value is -1, meaning that the maximum I/O size that
21032b0a21eSStephen McConnellwill be used per I/O will be calculated using the IOCFacts values stored in
21132b0a21eSStephen McConnellthe controller.
21232b0a21eSStephen McConnellThe lowest value that the driver will use for max_io_pages is 1, otherwise
21332b0a21eSStephen McConnellIOCFacts will be used to calculate the maximum I/O size.
21432b0a21eSStephen McConnellThe smaller I/O size calculated from either max_io_pages or IOCFacts will be the
21532b0a21eSStephen McConnellmaximum I/O size used by the driver.
216991554f2SKenneth D. Merry.Pp
217a5b31071SStephen McConnellThe highest number of active I/O commands seen since boot is stored in the
218991554f2SKenneth D. Merrydev.mpr.X.io_cmds_highwater
219991554f2SKenneth D. Merry.Xr sysctl 8
220991554f2SKenneth D. Merryvariable.
221991554f2SKenneth D. Merry.Pp
222991554f2SKenneth D. MerryDevices can be excluded from
223991554f2SKenneth D. Merry.Nm
224a5b31071SStephen McConnellcontrol for all adapters by setting this tunable in
225991554f2SKenneth D. Merry.Xr loader.conf 5 :
226991554f2SKenneth D. Merry.Bd -literal -offset indent
227991554f2SKenneth D. Merryhw.mpr.exclude_ids=Y
228991554f2SKenneth D. Merry.Ed
229991554f2SKenneth D. Merry.Pp
230a5b31071SStephen McConnellY represents the target ID of the device.
231a5b31071SStephen McConnellIf more than one device is to be excluded, target IDs are separated by commas.
232991554f2SKenneth D. Merry.Pp
233991554f2SKenneth D. MerryDevices can be excluded from
234991554f2SKenneth D. Merry.Nm
235a5b31071SStephen McConnellcontrol for a specific adapter by setting this tunable in
236991554f2SKenneth D. Merry.Xr loader.conf 5 :
237991554f2SKenneth D. Merry.Bd -literal -offset indent
238991554f2SKenneth D. Merrydev.mpr.X.exclude_ids=Y
239991554f2SKenneth D. Merry.Ed
240991554f2SKenneth D. Merry.Pp
241a5b31071SStephen McConnellY represents the target ID of the device.
242a5b31071SStephen McConnellIf more than one device is to be excluded, target IDs are separated by commas.
243a5b31071SStephen McConnell.Pp
244a5b31071SStephen McConnellThe adapter can issue the
245a5b31071SStephen McConnell.Sy StartStopUnit
246a5b31071SStephen McConnellSCSI command to SATA direct-access devices during shutdown.
247a5b31071SStephen McConnellThis allows the device to quiesce powering down.
248a5b31071SStephen McConnellTo control this feature for all adapters, set the
249a5b31071SStephen McConnell.Bd -literal -offset indent
250a5b31071SStephen McConnellhw.mpr.enable_ssu
251a5b31071SStephen McConnell.Ed
252a5b31071SStephen McConnell.Pp
253a5b31071SStephen McConnelltunable in
254a5b31071SStephen McConnell.Xr loader.conf 5
255a5b31071SStephen McConnellto one of these values:
256a5b31071SStephen McConnell.Bl -tag -width 6n -offset indent
257a5b31071SStephen McConnell.It 0
258a5b31071SStephen McConnellDo not send SSU to either HDDs or SSDs.
259a5b31071SStephen McConnell.It 1
260a5b31071SStephen McConnellSend SSU to SSDs, but not to HDDs.
261a5b31071SStephen McConnellThis is the default value.
262a5b31071SStephen McConnell.It 2
263a5b31071SStephen McConnellSend SSU to HDDs, but not to SSDs.
264a5b31071SStephen McConnell.It 3
265a5b31071SStephen McConnellSend SSU to both HDDs and SSDs.
266a5b31071SStephen McConnell.El
267a5b31071SStephen McConnell.Pp
26867feec50SStephen McConnellTo control this feature for a specific adapter, set this tunable value in
269a5b31071SStephen McConnell.Xr loader.conf 5 :
270a5b31071SStephen McConnell.Bd -literal -offset indent
271a5b31071SStephen McConnelldev.mpr.X.enable_ssu
272a5b31071SStephen McConnell.Ed
273a5b31071SStephen McConnell.Pp
27467feec50SStephen McConnellThe same set of values are valid as when setting this tunable for all adapters.
275a5b31071SStephen McConnell.Pp
276a5b31071SStephen McConnellSATA disks that take several seconds to spin up and fail the SATA Identify
277a5b31071SStephen McConnellcommand might not be discovered by the driver.
278a5b31071SStephen McConnellThis problem can sometimes be overcome by increasing the value of the spinup
279a5b31071SStephen McConnellwait time in
28032b0a21eSStephen McConnell.Xr loader.conf 5
281a5b31071SStephen McConnellwith the
282a5b31071SStephen McConnell.Bd -literal -offset indent
283a5b31071SStephen McConnellhw.mpr.spinup_wait_time=NNNN
284a5b31071SStephen McConnell.Ed
285a5b31071SStephen McConnell.Pp
286a5b31071SStephen McConnelltunable.
287a5b31071SStephen McConnellNNNN represents the number of seconds to wait for SATA devices to spin up when
288a5b31071SStephen McConnellthe device fails the initial SATA Identify command.
289a5b31071SStephen McConnell.Pp
290a5b31071SStephen McConnellSpinup wait times can be set for specific adapters in
291a5b31071SStephen McConnell.Xr loader.conf 5 :
292a5b31071SStephen McConnellwith the
293a5b31071SStephen McConnell.Bd -literal -offset indent
294a5b31071SStephen McConnelldev.mpr.X.spinup_wait_time=NNNN
295a5b31071SStephen McConnell.Ed
296a5b31071SStephen McConnell.Pp
297a5b31071SStephen McConnelltunable.
298a5b31071SStephen McConnellNNNN is the number of seconds to wait for SATA devices to spin up when they fail
299a5b31071SStephen McConnellthe initial SATA Identify command.
30067feec50SStephen McConnell.Pp
30167feec50SStephen McConnellThe driver can map devices discovered by the adapter so that target IDs
30267feec50SStephen McConnellcorresponding to a specific device persist across resets and reboots.
30367feec50SStephen McConnellIn some cases it is possible for devices to lose their mapped IDs due to
30467feec50SStephen McConnellunexpected behavior from certain hardware, such as some types of enclosures.
30567feec50SStephen McConnellTo overcome this problem, a tunable is provided that will force the driver to
30667feec50SStephen McConnellmap devices using the Phy number associated with the device.
30767feec50SStephen McConnellThis feature is not recommended if the topology includes multiple
30867feec50SStephen McConnellenclosures/expanders.
30967feec50SStephen McConnellIf multiple enclosures/expanders are present in the topology, Phy numbers are
31067feec50SStephen McConnellrepeated, causing all devices at these Phy numbers except the first device to
31167feec50SStephen McConnellfail enumeration.
31267feec50SStephen McConnellTo control this feature for all adapters, set the
31367feec50SStephen McConnell.Bd -literal -offset indent
31467feec50SStephen McConnellhw.mpr.use_phy_num
31567feec50SStephen McConnell.Ed
31667feec50SStephen McConnell.Pp
31767feec50SStephen McConnelltunable in
31867feec50SStephen McConnell.Xr loader.conf 5
31967feec50SStephen McConnellto one of these values:
32067feec50SStephen McConnell.Bl -tag -width 6n -offset indent
32167feec50SStephen McConnell.It -1
32267feec50SStephen McConnellOnly use Phy numbers to map devices and bypass the driver's mapping logic.
32367feec50SStephen McConnell.It 0
32467feec50SStephen McConnellNever use Phy numbers to map devices.
32567feec50SStephen McConnell.It 1
32667feec50SStephen McConnellUse Phy numbers to map devices, but only if the driver's mapping logic fails
32767feec50SStephen McConnellto map the device that is being enumerated.
32867feec50SStephen McConnellThis is the default value.
32967feec50SStephen McConnell.El
33067feec50SStephen McConnell.Pp
33167feec50SStephen McConnellTo control this feature for a specific adapter, set this tunable value in
33267feec50SStephen McConnell.Xr loader.conf 5 :
33367feec50SStephen McConnell.Bd -literal -offset indent
33467feec50SStephen McConnelldev.mpr.X.use_phy_num
33567feec50SStephen McConnell.Ed
33667feec50SStephen McConnell.Pp
33767feec50SStephen McConnellThe same set of values are valid as when setting this tunable for all adapters.
33867feec50SStephen McConnell.Pp
339991554f2SKenneth D. Merry.Sh DEBUGGING
340867aa8cdSScott LongDriver diagnostic printing is controlled in
341991554f2SKenneth D. Merry.Xr loader.conf 5
342867aa8cdSScott Longby using the global
343867aa8cdSScott Long.Va hw.mpr.debug_level
344867aa8cdSScott Longand per-device
345867aa8cdSScott Long.Va dev.mpr.X.debug_level
346867aa8cdSScott Longtunables.
347867aa8cdSScott LongOne can alter the debug level for any adapter at run-time using the
348867aa8cdSScott Long.Xr sysctl 8
349867aa8cdSScott Longvariable
350867aa8cdSScott Long.Va dev.mpr.X.debug_level .
351867aa8cdSScott Long.Pp
352867aa8cdSScott LongAll
353867aa8cdSScott Long.Va debug_level
354867aa8cdSScott Longvariables can be named by either an integer value or a text string.
355867aa8cdSScott LongMultiple values can be specified together by either ORing the
356867aa8cdSScott Longinteger values or by providing a comma-separated list of names.
357*cfd6fd5aSScott LongA text string prefixed by
358*cfd6fd5aSScott Long.Qq +
359*cfd6fd5aSScott Longadds the specified debug levels to the existing set, while the prefix
360*cfd6fd5aSScott Long.Qq -
361*cfd6fd5aSScott Longremoves them from the existing set.
362867aa8cdSScott LongThe current
363867aa8cdSScott Long.Va debug_level
364867aa8cdSScott Longstatus is reported in both formats for convenience.
365867aa8cdSScott LongThe following levels are available:
366867aa8cdSScott Long.Bl -column "FlagXX" "NameXXXX" "Description" -offset indent
367867aa8cdSScott Long.It Em Flag Ta Em Name Ta Em Description
368867aa8cdSScott Long.It 0x0001 Ta info Ta Basic information (enabled by default)
369867aa8cdSScott Long.It 0x0002 Ta fault Ta Driver faults (enabled by default)
370867aa8cdSScott Long.It 0x0004 Ta event Ta Controller events
371867aa8cdSScott Long.It 0x0008 Ta log Ta Logging data from controller
372867aa8cdSScott Long.It 0x0010 Ta recovery Ta Tracing of recovery operations
373867aa8cdSScott Long.It 0x0020 Ta error Ta Parameter errors and programming bugs
374867aa8cdSScott Long.It 0x0040 Ta init Ta System initialization operations
375867aa8cdSScott Long.It 0x0080 Ta xinfo Ta More detailed information
376867aa8cdSScott Long.It 0x0100 Ta user Ta Tracing of user-generated commands (IOCTL)
377867aa8cdSScott Long.It 0x0200 Ta mapping Ta Tracing of device mapping
378867aa8cdSScott Long.It 0x0400 Ta trace Ta Tracing through driver functions
379867aa8cdSScott Long.El
380991554f2SKenneth D. Merry.Sh SEE ALSO
381991554f2SKenneth D. Merry.Xr cam 4 ,
382991554f2SKenneth D. Merry.Xr cd 4 ,
383991554f2SKenneth D. Merry.Xr ch 4 ,
384991554f2SKenneth D. Merry.Xr da 4 ,
385991554f2SKenneth D. Merry.Xr mps 4 ,
3860c077badSChristian Brueffer.Xr mpt 4 ,
387991554f2SKenneth D. Merry.Xr pci 4 ,
388991554f2SKenneth D. Merry.Xr sa 4 ,
389991554f2SKenneth D. Merry.Xr scsi 4 ,
390991554f2SKenneth D. Merry.Xr targ 4 ,
391991554f2SKenneth D. Merry.Xr loader.conf 5 ,
392991554f2SKenneth D. Merry.Xr sysctl 8
393991554f2SKenneth D. Merry.Sh HISTORY
394991554f2SKenneth D. MerryThe
395991554f2SKenneth D. Merry.Nm
396991554f2SKenneth D. Merrydriver first appeared in FreeBSD 9.3.
397991554f2SKenneth D. Merry.Sh AUTHORS
398991554f2SKenneth D. MerryThe
399991554f2SKenneth D. Merry.Nm
400991554f2SKenneth D. Merrydriver was originally written by
401991554f2SKenneth D. Merry.An -nosplit
4026c899950SBaptiste Daroussin.An Scott Long Aq Mt scottl@FreeBSD.org .
403a5b31071SStephen McConnellIt has been improved and tested by LSI Corporation,
404a5b31071SStephen McConnellAvago Technologies (formally LSI), and Broadcom Ltd. (formally Avago).
405991554f2SKenneth D. Merry.Pp
406991554f2SKenneth D. MerryThis man page was written by
4076c899950SBaptiste Daroussin.An Ken Merry Aq Mt ken@FreeBSD.org
408991554f2SKenneth D. Merrywith additional input from
409a5b31071SStephen McConnell.An Stephen McConnell Aq Mt slm@FreeBSD.org .
410