summaryrefslogtreecommitdiff
path: root/static/freebsd/man4/mrsas.4 3.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/freebsd/man4/mrsas.4 3.html')
-rw-r--r--static/freebsd/man4/mrsas.4 3.html365
1 files changed, 365 insertions, 0 deletions
diff --git a/static/freebsd/man4/mrsas.4 3.html b/static/freebsd/man4/mrsas.4 3.html
new file mode 100644
index 00000000..18eca667
--- /dev/null
+++ b/static/freebsd/man4/mrsas.4 3.html
@@ -0,0 +1,365 @@
+<table class="head">
+ <tr>
+ <td class="head-ltitle">MRSAS(4)</td>
+ <td class="head-vol">Device Drivers Manual</td>
+ <td class="head-rtitle">MRSAS(4)</td>
+ </tr>
+</table>
+<div class="manual-text">
+<section class="Sh">
+<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
+<p class="Pp"><code class="Nm">mrsas</code> &#x2014;
+ <span class="Nd">Broadcom/LSI MegaRAID 6/12Gb/s SAS+SATA RAID controller
+ driver</span></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
+<p class="Pp"><code class="Cd">device pci</code>
+ <br/>
+ <code class="Cd">device mrsas</code></p>
+<p class="Pp">In <a class="Xr">loader.conf(5)</a>:
+ <br/>
+ <code class="Cd">mrsas_load=&quot;YES&quot;</code></p>
+<p class="Pp">In <a class="Xr">sysctl.conf(5)</a>:
+ <br/>
+ <code class="Cd">dev.mrsas.X.disable_ocr</code>
+ <br/>
+ <code class="Cd">dev.mrsas.X.fw_outstanding</code>
+ <br/>
+ <code class="Cd">dev.mrsas.X.mrsas_fw_fault_check_delay</code>
+ <br/>
+ <code class="Cd">dev.mrsas.X.mrsas_io_timeout</code>
+ <br/>
+ <code class="Cd">hw.mrsas.X.debug_level</code></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp">The <code class="Nm">mrsas</code> driver will detect
+ Broadcom/LSI's 6Gb/s and 12Gb/s PCI Express SAS/SATA/NVMe RAID controllers.
+ A disk (virtual disk/physical disk) attached to the
+ <code class="Nm">mrsas</code> driver will be visible to the user through
+ <a class="Xr">camcontrol(8)</a> as <span class="Pa">/dev/da?</span> device
+ nodes. A simple management interface is also provided per-controller via the
+ <span class="Pa">/dev/mrsas?</span> device node.</p>
+<p class="Pp">The <code class="Nm">mrsas</code> name is derived from the phrase
+ &quot;MegaRAID SAS HBA&quot;, which is substantially different than the old
+ &quot;MegaRAID&quot; Driver <a class="Xr">mfi(4)</a> which does not connect
+ targets to the <a class="Xr">cam(4)</a> layer and thus requires a new driver
+ which attaches targets to the <a class="Xr">cam(4)</a> layer. Older MegaRAID
+ controllers are supported by <a class="Xr">mfi(4)</a> and will not work with
+ <code class="Nm">mrsas</code>, but both the <a class="Xr">mfi(4)</a> and
+ <code class="Nm">mrsas</code> drivers can detect and manage the Broadcom/LSI
+ MegaRAID SAS 2208/2308/3008/3108 series of controllers.</p>
+<p class="Pp">The <a class="Xr">device.hints(5)</a> option is provided to tune
+ the <code class="Nm">mrsas</code> driver's behavior for LSI MegaRAID SAS
+ 2208/2308/3008/3108 controllers. By default, the <a class="Xr">mfi(4)</a>
+ driver will detect these controllers. See the
+ <a class="Sx" href="#PRIORITY">PRIORITY</a> section to know more about
+ driver priority for MR-Fusion devices.</p>
+<p class="Pp"><code class="Nm">mrsas</code> will provide a priority of (-30)
+ (between <code class="Dv">BUS_PROBE_DEFAULT</code> and
+ <code class="Dv">BUS_PROBE_LOW_PRIORITY</code>) at probe call for device
+ id's 0x005B, 0x005D, and 0x005F so that <code class="Nm">mrsas</code> does
+ not take control of these devices without user intervention.</p>
+<p class="Pp">Solid-state drives (SSD) get ATA TRIM support with
+ <code class="Nm">mrsas</code> if underlying adapter allows it. This may
+ require configuring SSD as Non-RAID drive rather then JBOD virtual mode.</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="HARDWARE"><a class="permalink" href="#HARDWARE">HARDWARE</a></h1>
+<p class="Pp">The <code class="Nm">mrsas</code> driver supports the following
+ LSI/Broadcom SATA/SAS RAID controllers:</p>
+<p class="Pp"></p>
+<table class="Bl-column Bl-compact">
+ <tr>
+ <td>Controller</td>
+ <td>Chip</td>
+ <td>Speed</td>
+ </tr>
+ <tr>
+ <td>Broadcom SAS3916</td>
+ <td>Aero</td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>Broadcom SAS3908</td>
+ <td>Aero</td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9380</td>
+ <td>Invader/Fury</td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9361</td>
+ <td>Invader/Fury</td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9341</td>
+ <td>Invader/Fury</td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9286</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9285</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9272</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9271</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9270</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9267</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9266</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI MegaRAID SAS 9265</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI SAS 3108</td>
+ <td></td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI SAS 3008</td>
+ <td></td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI SAS 2308</td>
+ <td></td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>LSI SAS 2208</td>
+ <td></td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>DELL PERC H830</td>
+ <td>Invader/Fury</td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>DELL PERC H810</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>DELL PERC H730/P</td>
+ <td>Invader/Fury</td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>DELL PERC H710/P</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+ <tr>
+ <td>DELL PERC H330</td>
+ <td>Invader/Fury</td>
+ <td>12Gb/s</td>
+ </tr>
+ <tr>
+ <td>Fujitsu D3116</td>
+ <td>Thunderbolt</td>
+ <td>6Gb/s</td>
+ </tr>
+</table>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="CONFIGURATION"><a class="permalink" href="#CONFIGURATION">CONFIGURATION</a></h1>
+<p class="Pp">To disable Online Controller Reset(OCR) for a specific
+ <code class="Nm">mrsas</code> driver instance, set the following tunable
+ value in <a class="Xr">loader.conf(5)</a>:</p>
+<p class="Pp"></p>
+<div class="Bd
+ Bd-indent"><code class="Li"><var class="Va">dev.mrsas.X.disable_ocr=1</var></code></div>
+<p class="Pp">where X is the adapter number.</p>
+<p class="Pp">To change the I/O timeout value for a specific
+ <code class="Nm">mrsas</code> driver instance, set the following tunable
+ value in <a class="Xr">loader.conf(5)</a>:</p>
+<p class="Pp"></p>
+<div class="Bd
+ Bd-indent"><code class="Li"><var class="Va">dev.mrsas.X.mrsas_io_timeout=NNNNNN</var></code></div>
+<p class="Pp">where NNNNNN is the timeout value in milli-seconds.</p>
+<p class="Pp">To change the firmware fault check timer value for a specific
+ <code class="Nm">mrsas</code> driver instance, set the following tunable
+ value in <a class="Xr">loader.conf(5)</a>:</p>
+<p class="Pp"></p>
+<div class="Bd
+ Bd-indent"><code class="Li"><var class="Va">dev.mrsas.X.mrsas_fw_fault_check_delay=NN</var></code></div>
+<p class="Pp">where NN is the fault check delay value in seconds.</p>
+<p class="Pp">The current number of active I/O commands is shown in the
+ <var class="Va">dev.mrsas.X.fw_outstanding</var> <a class="Xr">sysctl(8)</a>
+ variable.</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DEBUGGING"><a class="permalink" href="#DEBUGGING">DEBUGGING</a></h1>
+<p class="Pp">To enable debugging prints from the <code class="Nm">mrsas</code>
+ driver, set the <var class="Va">hw.mrsas.X.debug_level</var> variable, where
+ X is the adapter number, either in <a class="Xr">loader.conf(5)</a> or via
+ <a class="Xr">sysctl(8)</a>. The following bits have the described
+ effects:</p>
+<div class="Bd-indent">
+<dl class="Bl-tag">
+ <dt>0x01</dt>
+ <dd>Enable informational prints.</dd>
+ <dt>0x02</dt>
+ <dd>Enable tracing prints.</dd>
+ <dt>0x04</dt>
+ <dd>Enable prints for driver faults.</dd>
+ <dt>0x08</dt>
+ <dd>Enable prints for OCR and I/O timeout.</dd>
+ <dt>0x10</dt>
+ <dd>Enable prints for AEN events.</dd>
+</dl>
+</div>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="PRIORITY"><a class="permalink" href="#PRIORITY">PRIORITY</a></h1>
+<p class="Pp">The <code class="Nm">mrsas</code> driver will always set a default
+ (-30) priority in the PCI subsystem for selection of MR-Fusion cards. (It is
+ between <code class="Dv">BUS_PROBE_DEFAULT</code> and
+ <code class="Dv">BUS_PROBE_LOW_PRIORITY</code>). MR-Fusion Controllers
+ include all cards with the Device IDs - 0x005B, 0x005D, 0x005F.</p>
+<p class="Pp">The <a class="Xr">mfi(4)</a> driver will set a priority of either
+ <code class="Dv">BUS_PROBE_DEFAULT</code> or
+ <code class="Dv">BUS_PROBE_LOW_PRIORITY</code> (depending on the
+ device.hints setting) in the PCI subsystem for selection of MR-Fusion cards.
+ With the above design in place, the <a class="Xr">mfi(4)</a> driver will
+ attach to a MR-Fusion card given that it has a higher priority than
+ <code class="Nm">mrsas</code>.</p>
+<p class="Pp">Using <span class="Pa">/boot/device.hints</span> (as mentioned
+ below), the user can provide a preference for the
+ <code class="Nm">mrsas</code> driver to detect a MR-Fusion card instead of
+ the <a class="Xr">mfi(4)</a> driver.</p>
+<div class="Bd Pp
+ Bd-indent"><code class="Cd">hw.mfi.mrsas_enable=&quot;1&quot;</code></div>
+<p class="Pp">At boot time, the <a class="Xr">mfi(4)</a> driver will get
+ priority to detect MR-Fusion controllers by default. Before changing this
+ default driver selection policy, LSI advises users to understand how the
+ driver selection policy works. LSI's policy is to provide priority to the
+ <a class="Xr">mfi(4)</a> driver to detect MR-Fusion cards, but allow for the
+ ability to choose the <code class="Nm">mrsas</code> driver to detect
+ MR-Fusion cards.</p>
+<p class="Pp">LSI recommends setting
+ <var class="Va">hw.mfi.mrsas_enable=&quot;0&quot;</var> for customers who
+ are using the older <a class="Xr">mfi(4)</a> driver and do not want to
+ switch to <code class="Nm">mrsas</code>. For those using a MR-Fusion
+ controller for the first time, LSI recommends using the
+ <code class="Nm">mrsas</code> driver and setting
+ <var class="Va">hw.mfi.mrsas_enable=&quot;1&quot;.</var></p>
+<p class="Pp" id="boot">Changing the default behavior is well tested under most
+ conditions, but unexpected behavior may pop up if more complex and
+ unrealistic operations are executed by switching between the
+ <a class="Xr">mfi(4)</a> and <code class="Nm">mrsas</code> drivers for
+ MR-Fusion. Switching drivers is designed to happen only one time. Although
+ multiple switching is possible, it is not recommended. The user should
+ decide from <a class="permalink" href="#boot"><b class="Sy">boot</b></a>
+ which driver they want to use for the MR-Fusion card.</p>
+<p class="Pp" id="works">The user may see different device names when switching
+ from <a class="Xr">mfi(4)</a> to <code class="Nm">mrsas</code>. This
+ behavior <a class="permalink" href="#works"><b class="Sy">works as
+ intended</b></a> and the user needs to change the <a class="Xr">fstab(5)</a>
+ entry manually if they are doing any experiments with
+ <a class="Xr">mfi(4)</a> and <code class="Nm">mrsas</code>
+ interoperability.</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1>
+<dl class="Bl-tag Bl-compact">
+ <dt><span class="Pa">/dev/da?</span></dt>
+ <dd>array/logical disk interface</dd>
+ <dt><span class="Pa">/dev/mrsas?</span></dt>
+ <dd>management interface</dd>
+</dl>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
+ ALSO</a></h1>
+<p class="Pp"><a class="Xr">cam(4)</a>, <a class="Xr">mfi(4)</a>,
+ <a class="Xr">pci(4)</a>, <a class="Xr">device.hints(5)</a>,
+ <a class="Xr">camcontrol(8)</a></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
+<p class="Pp">The <code class="Nm">mrsas</code> driver first appeared in
+ <span class="Ux">FreeBSD 10.1</span>.</p>
+<div class="Bd Pp"><code class="Cd">mfi Driver:</code> <a class="Xr">mfi(4)</a>
+ is the old <span class="Ux">FreeBSD</span> driver which started with support
+ for Gen-1 Controllers and was extended to support up to MR-Fusion (Device ID =
+ 0x005B, 0x005D, 0x005F).</div>
+<div class="Bd Pp"><code class="Cd">mrsas Driver:</code>
+ <code class="Nm">mrsas</code> is the new driver reworked by LSI which supports
+ Thunderbolt and onward products. The SAS+SATA RAID controller with device id
+ 0x005B is referred to as the Thunderbolt controller throughout this man
+ page.</div>
+<div class="Bd Pp"><a class="permalink" href="#cam"><b class="Sy" id="cam">cam
+ aware HBA drivers:</b></a> <span class="Ux">FreeBSD</span> has a
+ <a class="Xr">cam(4)</a> layer which attaches storage devices and provides a
+ common access mechanism to storage controllers and attached devices. The
+ <code class="Nm">mrsas</code> driver is <a class="Xr">cam(4)</a> aware and
+ devices associated with <code class="Nm">mrsas</code> can be seen using
+ <a class="Xr">camcontrol(8)</a>. The <a class="Xr">mfi(4)</a> driver does not
+ understand the <a class="Xr">cam(4)</a> layer and it directly associates
+ storage disks to the block layer.
+<p class="Pp" id="Thunderbolt"><a class="permalink" href="#Thunderbolt"><b class="Sy">Thunderbolt
+ Controller:</b></a> This is the 6Gb/s MegaRAID HBA card which has device id
+ 0x005B.</p>
+<p class="Pp" id="Invader"><a class="permalink" href="#Invader"><b class="Sy">Invader
+ Controller:</b></a> This is 12Gb/s MegaRAID HBA card which has device id
+ 0x005D.</p>
+<p class="Pp" id="Fury"><a class="permalink" href="#Fury"><b class="Sy">Fury
+ Controller:</b></a> This is the 12Gb/s MegaRAID HBA card which has device id
+ 0x005F.</p>
+</div>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
+<p class="Pp">The <code class="Nm">mrsas</code> driver and this manual page were
+ written by <span class="An">Kashyap Desai</span>
+ &lt;<a class="Mt" href="mailto:Kashyap.Desai@lsi.com">Kashyap.Desai@lsi.com</a>&gt;.</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="CAVEATS"><a class="permalink" href="#CAVEATS">CAVEATS</a></h1>
+<p class="Pp">The <code class="Nm">mrsas</code> driver exposes devices as
+ <span class="Pa">/dev/da?</span>, whereas <a class="Xr">mfi(4)</a> exposes
+ devices as <span class="Pa">/dev/mfid?</span>.</p>
+<p class="Pp"><code class="Nm">mrsas</code> does not support the Linux Emulator
+ Interface, <a class="Xr">mfiutil(8)</a>, or device name aliases for
+ switching drivers without editing <a class="Xr">fstab(5)</a>.</p>
+</section>
+</div>
+<table class="foot">
+ <tr>
+ <td class="foot-date">January 6, 2026</td>
+ <td class="foot-os">FreeBSD 15.0</td>
+ </tr>
+</table>