xref: /freebsd/share/man/man4/mpr.4 (revision b2c76c41be32f904179efed29c0ca04d53f3996c)
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
5751ec8afSSreekanth Reddy.\" Copyright (c) 2015-2022 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.\"
4008b96108SAlexander Motin.Dd June 1, 2019
41991554f2SKenneth D. Merry.Dt MPR 4
42991554f2SKenneth D. Merry.Os
43991554f2SKenneth D. Merry.Sh NAME
44991554f2SKenneth D. Merry.Nm mpr
4567feec50SStephen McConnell.Nd "LSI Fusion-MPT 3/3.5 IT/IR 12Gb/s Serial Attached SCSI/SATA/PCIe driver"
46991554f2SKenneth D. Merry.Sh SYNOPSIS
47a5b31071SStephen McConnellTo compile this driver into the kernel, place these lines in the kernel
48a5b31071SStephen McConnellconfiguration file:
49991554f2SKenneth D. Merry.Bd -ragged -offset indent
50991554f2SKenneth D. Merry.Cd "device pci"
51991554f2SKenneth D. Merry.Cd "device scbus"
52991554f2SKenneth D. Merry.Cd "device mpr"
53991554f2SKenneth D. Merry.Ed
54991554f2SKenneth D. Merry.Pp
55a5b31071SStephen McConnellThe driver can be loaded as a module at boot time by placing this line in
56991554f2SKenneth D. Merry.Xr loader.conf 5 :
57991554f2SKenneth D. Merry.Bd -literal -offset indent
58991554f2SKenneth D. Merrympr_load="YES"
59991554f2SKenneth D. Merry.Ed
60991554f2SKenneth D. Merry.Sh DESCRIPTION
61991554f2SKenneth D. MerryThe
62991554f2SKenneth D. Merry.Nm
63a5b31071SStephen McConnelldriver provides support for Broadcom Ltd./Avago Tech (LSI)
6467feec50SStephen McConnellFusion-MPT 3/3.5 IT/IR
6567feec50SStephen McConnell.Tn SAS/PCIe
66991554f2SKenneth D. Merrycontrollers.
67991554f2SKenneth D. Merry.Sh HARDWARE
68a5b31071SStephen McConnellThese controllers are supported by the
69991554f2SKenneth D. Merry.Nm
70d3e6a7f8SChristian Bruefferdriver:
71991554f2SKenneth D. Merry.Pp
72991554f2SKenneth D. Merry.Bl -bullet -compact
73991554f2SKenneth D. Merry.It
74a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3004 (4 Port SAS)
75991554f2SKenneth D. Merry.It
76a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3008 (8 Port SAS)
77991554f2SKenneth D. Merry.It
78a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3108 (8 Port SAS)
79a5b31071SStephen McConnell.It
80a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3216 (16 Port SAS)
81a5b31071SStephen McConnell.It
82a5b31071SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3224 (24 Port SAS)
8367feec50SStephen McConnell.It
8467feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3316 (16 Port SAS)
8567feec50SStephen McConnell.It
8667feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3324 (24 Port SAS)
8767feec50SStephen McConnell.It
8867feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3408 (8 Port SAS/PCIe)
8967feec50SStephen McConnell.It
9067feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3416 (16 Port SAS/PCIe)
9167feec50SStephen McConnell.It
9267feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3508 (8 Port SAS/PCIe)
9367feec50SStephen McConnell.It
9467feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3516 (16 Port SAS/PCIe)
9567feec50SStephen McConnell.It
9667feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3616 (16 Port SAS/PCIe)
9767feec50SStephen McConnell.It
9867feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3708 (8 Port SAS/PCIe)
9967feec50SStephen McConnell.It
10067feec50SStephen McConnellBroadcom Ltd./Avago Tech (LSI) SAS 3716 (16 Port SAS/PCIe)
101751ec8afSSreekanth Reddy.It
102751ec8afSSreekanth ReddyBroadcom Ltd./Avago Tech (LSI) SAS 3816 (16 Port SAS/PCIe)
103751ec8afSSreekanth Reddy.It
104751ec8afSSreekanth ReddyBroadcom Ltd./Avago Tech (LSI) SAS 3916 (16 Port SAS/PCIe)
105991554f2SKenneth D. Merry.El
106991554f2SKenneth D. Merry.Sh CONFIGURATION
107a5b31071SStephen McConnellIn all tunable descriptions below, X represents the adapter number.
108a5b31071SStephen McConnell.Pp
109991554f2SKenneth D. MerryTo disable MSI interrupts for all
110991554f2SKenneth D. Merry.Nm
111a5b31071SStephen McConnelldriver instances, set this tunable value in
112991554f2SKenneth D. Merry.Xr loader.conf 5 :
113991554f2SKenneth D. Merry.Bd -literal -offset indent
114991554f2SKenneth D. Merryhw.mpr.disable_msi=1
115991554f2SKenneth D. Merry.Ed
116991554f2SKenneth D. Merry.Pp
117991554f2SKenneth D. MerryTo disable MSI interrupts for a specific
118991554f2SKenneth D. Merry.Nm
119a5b31071SStephen McConnelldriver instance, set this tunable value in
120991554f2SKenneth D. Merry.Xr loader.conf 5 :
121991554f2SKenneth D. Merry.Bd -literal -offset indent
122991554f2SKenneth D. Merrydev.mpr.X.disable_msi=1
123991554f2SKenneth D. Merry.Ed
124991554f2SKenneth D. Merry.Pp
125991554f2SKenneth D. MerryTo disable MSI-X interrupts for all
126991554f2SKenneth D. Merry.Nm
127a5b31071SStephen McConnelldriver instances, set this tunable value in
128991554f2SKenneth D. Merry.Xr loader.conf 5 :
129991554f2SKenneth D. Merry.Bd -literal -offset indent
130991554f2SKenneth D. Merryhw.mpr.disable_msix=1
131991554f2SKenneth D. Merry.Ed
132991554f2SKenneth D. Merry.Pp
133991554f2SKenneth D. MerryTo disable MSI-X interrupts for a specific
134991554f2SKenneth D. Merry.Nm
135a5b31071SStephen McConnelldriver instance, set this tunable value in
136991554f2SKenneth D. Merry.Xr loader.conf 5 :
137991554f2SKenneth D. Merry.Bd -literal -offset indent
138991554f2SKenneth D. Merrydev.mpr.X.disable_msix=1
139991554f2SKenneth D. Merry.Ed
140991554f2SKenneth D. Merry.Pp
141991554f2SKenneth D. MerryTo set the maximum number of DMA chains allocated for all adapters, set
142a5b31071SStephen McConnellthis tunable in
143991554f2SKenneth D. Merry.Xr loader.conf 5 :
144991554f2SKenneth D. Merry.Bd -literal -offset indent
145991554f2SKenneth D. Merryhw.mpr.max_chains=NNNN
146991554f2SKenneth D. Merry.Ed
147991554f2SKenneth D. Merry.Pp
148991554f2SKenneth D. MerryTo set the maximum number of DMA chains allocated for a specific adapter,
149a5b31071SStephen McConnellset this tunable in
150991554f2SKenneth D. Merry.Xr loader.conf 5 :
151991554f2SKenneth D. Merry.Bd -literal -offset indent
152991554f2SKenneth D. Merrydev.mpr.X.max_chains=NNNN
153991554f2SKenneth D. Merry.Ed
154991554f2SKenneth D. Merry.Pp
15508b96108SAlexander MotinThe default max_chains value is 16384.
156991554f2SKenneth D. Merry.Pp
157a5b31071SStephen McConnellThe current number of free chain frames is stored in the
158991554f2SKenneth D. Merrydev.mpr.X.chain_free
159991554f2SKenneth D. Merry.Xr sysctl 8
160991554f2SKenneth D. Merryvariable.
161991554f2SKenneth D. Merry.Pp
162a5b31071SStephen McConnellThe lowest number of free chain frames seen since boot is stored in the
163991554f2SKenneth D. Merrydev.mpr.X.chain_free_lowwater
164991554f2SKenneth D. Merry.Xr sysctl 8
165991554f2SKenneth D. Merryvariable.
166991554f2SKenneth D. Merry.Pp
167a5b31071SStephen McConnellThe number of times that chain frame allocations have failed since boot is
168a5b31071SStephen McConnellstored in the
169a5b31071SStephen McConnelldev.mpr.X.chain_alloc_fail
170a5b31071SStephen McConnell.Xr sysctl 8
171a5b31071SStephen McConnellvariable.
172a5b31071SStephen McConnellThis can be used to determine whether the max_chains tunable should be
173a5b31071SStephen McConnellincreased to help performance.
174a5b31071SStephen McConnell.Pp
175991554f2SKenneth D. MerryThe current number of active I/O commands is shown in the
176991554f2SKenneth D. Merrydev.mpr.X.io_cmds_active
177991554f2SKenneth D. Merry.Xr sysctl 8
178991554f2SKenneth D. Merryvariable.
17932b0a21eSStephen McConnell.Pp
18067feec50SStephen McConnellThe current number of free PRP pages is stored in the
18167feec50SStephen McConnelldev.mpr.X.prp_pages_free
18267feec50SStephen McConnell.Xr sysctl 8
18367feec50SStephen McConnellvariable.
18467feec50SStephen McConnellPRP pages are used by NVMe devices for I/O transfers, much like Scatter/Gather
18567feec50SStephen McConnelllists.
18667feec50SStephen McConnell.Pp
18767feec50SStephen McConnellThe lowest number of free PRP pages seen since boot is stored in the
18867feec50SStephen McConnelldev.mpr.X.prp_pages_free_lowwater
18967feec50SStephen McConnell.Xr sysctl 8
19067feec50SStephen McConnellvariable.
19167feec50SStephen McConnell.Pp
19267feec50SStephen McConnellThe number of times that PRP page allocations have failed since boot is
19367feec50SStephen McConnellstored in the
19467feec50SStephen McConnelldev.mpr.X.prp_page_alloc_fail
19567feec50SStephen McConnell.Xr sysctl 8
19667feec50SStephen McConnellvariable.
19767feec50SStephen McConnell.Pp
19832b0a21eSStephen McConnellTo set the maximum number of pages that will be used per I/O for all adapters,
19932b0a21eSStephen McConnellset this tunable in
20032b0a21eSStephen McConnell.Xr loader.conf 5 :
20132b0a21eSStephen McConnell.Bd -literal -offset indent
20232b0a21eSStephen McConnellhw.mpr.max_io_pages=NNNN
20332b0a21eSStephen McConnell.Ed
20432b0a21eSStephen McConnell.Pp
20532b0a21eSStephen McConnellTo set the maximum number of pages that will be used per I/O for a specific
20632b0a21eSStephen McConnelladapter, set this tunable in
20732b0a21eSStephen McConnell.Xr loader.conf 5 :
20832b0a21eSStephen McConnell.Bd -literal -offset indent
20932b0a21eSStephen McConnelldev.mpr.X.max_io_pages=NNNN
21032b0a21eSStephen McConnell.Ed
21132b0a21eSStephen McConnell.Pp
21232b0a21eSStephen McConnellThe default max_io_pages value is -1, meaning that the maximum I/O size that
21332b0a21eSStephen McConnellwill be used per I/O will be calculated using the IOCFacts values stored in
21432b0a21eSStephen McConnellthe controller.
21532b0a21eSStephen McConnellThe lowest value that the driver will use for max_io_pages is 1, otherwise
21632b0a21eSStephen McConnellIOCFacts will be used to calculate the maximum I/O size.
21732b0a21eSStephen McConnellThe smaller I/O size calculated from either max_io_pages or IOCFacts will be the
21832b0a21eSStephen McConnellmaximum I/O size used by the driver.
219991554f2SKenneth D. Merry.Pp
220a5b31071SStephen McConnellThe highest number of active I/O commands seen since boot is stored in the
221991554f2SKenneth D. Merrydev.mpr.X.io_cmds_highwater
222991554f2SKenneth D. Merry.Xr sysctl 8
223991554f2SKenneth D. Merryvariable.
224991554f2SKenneth D. Merry.Pp
225991554f2SKenneth D. MerryDevices can be excluded from
226991554f2SKenneth D. Merry.Nm
227a5b31071SStephen McConnellcontrol for all adapters by setting this tunable in
228991554f2SKenneth D. Merry.Xr loader.conf 5 :
229991554f2SKenneth D. Merry.Bd -literal -offset indent
230991554f2SKenneth D. Merryhw.mpr.exclude_ids=Y
231991554f2SKenneth D. Merry.Ed
232991554f2SKenneth D. Merry.Pp
233a5b31071SStephen McConnellY represents the target ID of the device.
234a5b31071SStephen McConnellIf more than one device is to be excluded, target IDs are separated by commas.
235991554f2SKenneth D. Merry.Pp
236991554f2SKenneth D. MerryDevices can be excluded from
237991554f2SKenneth D. Merry.Nm
238a5b31071SStephen McConnellcontrol for a specific adapter by setting this tunable in
239991554f2SKenneth D. Merry.Xr loader.conf 5 :
240991554f2SKenneth D. Merry.Bd -literal -offset indent
241991554f2SKenneth D. Merrydev.mpr.X.exclude_ids=Y
242991554f2SKenneth D. Merry.Ed
243991554f2SKenneth D. Merry.Pp
244a5b31071SStephen McConnellY represents the target ID of the device.
245a5b31071SStephen McConnellIf more than one device is to be excluded, target IDs are separated by commas.
246a5b31071SStephen McConnell.Pp
247a5b31071SStephen McConnellThe adapter can issue the
248a5b31071SStephen McConnell.Sy StartStopUnit
249a5b31071SStephen McConnellSCSI command to SATA direct-access devices during shutdown.
250a5b31071SStephen McConnellThis allows the device to quiesce powering down.
251a5b31071SStephen McConnellTo control this feature for all adapters, set the
252a5b31071SStephen McConnell.Bd -literal -offset indent
253a5b31071SStephen McConnellhw.mpr.enable_ssu
254a5b31071SStephen McConnell.Ed
255a5b31071SStephen McConnell.Pp
256a5b31071SStephen McConnelltunable in
257a5b31071SStephen McConnell.Xr loader.conf 5
258a5b31071SStephen McConnellto one of these values:
259a5b31071SStephen McConnell.Bl -tag -width 6n -offset indent
260a5b31071SStephen McConnell.It 0
261a5b31071SStephen McConnellDo not send SSU to either HDDs or SSDs.
262a5b31071SStephen McConnell.It 1
263a5b31071SStephen McConnellSend SSU to SSDs, but not to HDDs.
264a5b31071SStephen McConnellThis is the default value.
265a5b31071SStephen McConnell.It 2
266a5b31071SStephen McConnellSend SSU to HDDs, but not to SSDs.
267a5b31071SStephen McConnell.It 3
268a5b31071SStephen McConnellSend SSU to both HDDs and SSDs.
269a5b31071SStephen McConnell.El
270a5b31071SStephen McConnell.Pp
27167feec50SStephen McConnellTo control this feature for a specific adapter, set this tunable value in
272a5b31071SStephen McConnell.Xr loader.conf 5 :
273a5b31071SStephen McConnell.Bd -literal -offset indent
274a5b31071SStephen McConnelldev.mpr.X.enable_ssu
275a5b31071SStephen McConnell.Ed
276a5b31071SStephen McConnell.Pp
27767feec50SStephen McConnellThe same set of values are valid as when setting this tunable for all adapters.
278a5b31071SStephen McConnell.Pp
279a5b31071SStephen McConnellSATA disks that take several seconds to spin up and fail the SATA Identify
280a5b31071SStephen McConnellcommand might not be discovered by the driver.
281a5b31071SStephen McConnellThis problem can sometimes be overcome by increasing the value of the spinup
282a5b31071SStephen McConnellwait time in
28332b0a21eSStephen McConnell.Xr loader.conf 5
284a5b31071SStephen McConnellwith the
285a5b31071SStephen McConnell.Bd -literal -offset indent
286a5b31071SStephen McConnellhw.mpr.spinup_wait_time=NNNN
287a5b31071SStephen McConnell.Ed
288a5b31071SStephen McConnell.Pp
289a5b31071SStephen McConnelltunable.
290a5b31071SStephen McConnellNNNN represents the number of seconds to wait for SATA devices to spin up when
291a5b31071SStephen McConnellthe device fails the initial SATA Identify command.
292a5b31071SStephen McConnell.Pp
293a5b31071SStephen McConnellSpinup wait times can be set for specific adapters in
294a5b31071SStephen McConnell.Xr loader.conf 5 :
295a5b31071SStephen McConnellwith the
296a5b31071SStephen McConnell.Bd -literal -offset indent
297a5b31071SStephen McConnelldev.mpr.X.spinup_wait_time=NNNN
298a5b31071SStephen McConnell.Ed
299a5b31071SStephen McConnell.Pp
300a5b31071SStephen McConnelltunable.
301a5b31071SStephen McConnellNNNN is the number of seconds to wait for SATA devices to spin up when they fail
302a5b31071SStephen McConnellthe initial SATA Identify command.
30367feec50SStephen McConnell.Pp
30467feec50SStephen McConnellThe driver can map devices discovered by the adapter so that target IDs
30567feec50SStephen McConnellcorresponding to a specific device persist across resets and reboots.
30667feec50SStephen McConnellIn some cases it is possible for devices to lose their mapped IDs due to
30767feec50SStephen McConnellunexpected behavior from certain hardware, such as some types of enclosures.
30867feec50SStephen McConnellTo overcome this problem, a tunable is provided that will force the driver to
30967feec50SStephen McConnellmap devices using the Phy number associated with the device.
31067feec50SStephen McConnellThis feature is not recommended if the topology includes multiple
31167feec50SStephen McConnellenclosures/expanders.
31267feec50SStephen McConnellIf multiple enclosures/expanders are present in the topology, Phy numbers are
31367feec50SStephen McConnellrepeated, causing all devices at these Phy numbers except the first device to
31467feec50SStephen McConnellfail enumeration.
31567feec50SStephen McConnellTo control this feature for all adapters, set the
31667feec50SStephen McConnell.Bd -literal -offset indent
31767feec50SStephen McConnellhw.mpr.use_phy_num
31867feec50SStephen McConnell.Ed
31967feec50SStephen McConnell.Pp
32067feec50SStephen McConnelltunable in
32167feec50SStephen McConnell.Xr loader.conf 5
32267feec50SStephen McConnellto one of these values:
32367feec50SStephen McConnell.Bl -tag -width 6n -offset indent
32467feec50SStephen McConnell.It -1
32567feec50SStephen McConnellOnly use Phy numbers to map devices and bypass the driver's mapping logic.
32667feec50SStephen McConnell.It 0
32767feec50SStephen McConnellNever use Phy numbers to map devices.
32867feec50SStephen McConnell.It 1
32967feec50SStephen McConnellUse Phy numbers to map devices, but only if the driver's mapping logic fails
33067feec50SStephen McConnellto map the device that is being enumerated.
33167feec50SStephen McConnellThis is the default value.
33267feec50SStephen McConnell.El
33367feec50SStephen McConnell.Pp
33467feec50SStephen McConnellTo control this feature for a specific adapter, set this tunable value in
33567feec50SStephen McConnell.Xr loader.conf 5 :
33667feec50SStephen McConnell.Bd -literal -offset indent
33767feec50SStephen McConnelldev.mpr.X.use_phy_num
33867feec50SStephen McConnell.Ed
33967feec50SStephen McConnell.Pp
34067feec50SStephen McConnellThe same set of values are valid as when setting this tunable for all adapters.
341991554f2SKenneth D. Merry.Sh DEBUGGING
342867aa8cdSScott LongDriver diagnostic printing is controlled in
343991554f2SKenneth D. Merry.Xr loader.conf 5
344867aa8cdSScott Longby using the global
345867aa8cdSScott Long.Va hw.mpr.debug_level
346867aa8cdSScott Longand per-device
347867aa8cdSScott Long.Va dev.mpr.X.debug_level
348867aa8cdSScott Longtunables.
349867aa8cdSScott LongOne can alter the debug level for any adapter at run-time using the
350867aa8cdSScott Long.Xr sysctl 8
351867aa8cdSScott Longvariable
352867aa8cdSScott Long.Va dev.mpr.X.debug_level .
353867aa8cdSScott Long.Pp
354867aa8cdSScott LongAll
355867aa8cdSScott Long.Va debug_level
356867aa8cdSScott Longvariables can be named by either an integer value or a text string.
357867aa8cdSScott LongMultiple values can be specified together by either ORing the
358867aa8cdSScott Longinteger values or by providing a comma-separated list of names.
359cfd6fd5aSScott LongA text string prefixed by
360cfd6fd5aSScott Long.Qq +
361cfd6fd5aSScott Longadds the specified debug levels to the existing set, while the prefix
362cfd6fd5aSScott Long.Qq -
363cfd6fd5aSScott Longremoves them from the existing set.
364867aa8cdSScott LongThe current
365867aa8cdSScott Long.Va debug_level
366867aa8cdSScott Longstatus is reported in both formats for convenience.
367867aa8cdSScott LongThe following levels are available:
368867aa8cdSScott Long.Bl -column "FlagXX" "NameXXXX" "Description" -offset indent
369867aa8cdSScott Long.It Em Flag Ta Em Name Ta Em Description
370867aa8cdSScott Long.It 0x0001 Ta info Ta Basic information (enabled by default)
371867aa8cdSScott Long.It 0x0002 Ta fault Ta Driver faults (enabled by default)
372867aa8cdSScott Long.It 0x0004 Ta event Ta Controller events
373867aa8cdSScott Long.It 0x0008 Ta log Ta Logging data from controller
374867aa8cdSScott Long.It 0x0010 Ta recovery Ta Tracing of recovery operations
375867aa8cdSScott Long.It 0x0020 Ta error Ta Parameter errors and programming bugs
376867aa8cdSScott Long.It 0x0040 Ta init Ta System initialization operations
377867aa8cdSScott Long.It 0x0080 Ta xinfo Ta More detailed information
378867aa8cdSScott Long.It 0x0100 Ta user Ta Tracing of user-generated commands (IOCTL)
379867aa8cdSScott Long.It 0x0200 Ta mapping Ta Tracing of device mapping
380867aa8cdSScott Long.It 0x0400 Ta trace Ta Tracing through driver functions
381867aa8cdSScott Long.El
382991554f2SKenneth D. Merry.Sh SEE ALSO
383991554f2SKenneth D. Merry.Xr cam 4 ,
384991554f2SKenneth D. Merry.Xr cd 4 ,
385991554f2SKenneth D. Merry.Xr ch 4 ,
386991554f2SKenneth D. Merry.Xr da 4 ,
387991554f2SKenneth D. Merry.Xr mps 4 ,
3880c077badSChristian Brueffer.Xr mpt 4 ,
389991554f2SKenneth D. Merry.Xr pci 4 ,
390991554f2SKenneth D. Merry.Xr sa 4 ,
391991554f2SKenneth D. Merry.Xr scsi 4 ,
392991554f2SKenneth D. Merry.Xr targ 4 ,
393991554f2SKenneth D. Merry.Xr loader.conf 5 ,
394*560a7d25STom Hukins.Xr mprutil 8 ,
395991554f2SKenneth D. Merry.Xr sysctl 8
396991554f2SKenneth D. Merry.Sh HISTORY
397991554f2SKenneth D. MerryThe
398991554f2SKenneth D. Merry.Nm
3999e9a6101SAlan Somersdriver first appeared in
4009e9a6101SAlan Somers.Fx 9.3 .
401991554f2SKenneth D. Merry.Sh AUTHORS
402991554f2SKenneth D. MerryThe
403991554f2SKenneth D. Merry.Nm
404991554f2SKenneth D. Merrydriver was originally written by
405991554f2SKenneth D. Merry.An -nosplit
4066c899950SBaptiste Daroussin.An Scott Long Aq Mt scottl@FreeBSD.org .
407a5b31071SStephen McConnellIt has been improved and tested by LSI Corporation,
4085affc86bSCeri DaviesAvago Technologies (formerly LSI), and Broadcom Ltd. (formerly Avago).
409991554f2SKenneth D. Merry.Pp
4105affc86bSCeri DaviesThis manual page was written by
4116c899950SBaptiste Daroussin.An Ken Merry Aq Mt ken@FreeBSD.org
412991554f2SKenneth D. Merrywith additional input from
413a5b31071SStephen McConnell.An Stephen McConnell Aq Mt slm@FreeBSD.org .
414