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