summaryrefslogtreecommitdiff
path: root/static/freebsd/man4/bnxt.4 3.html
diff options
context:
space:
mode:
authorJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 19:55:43 -0400
committerJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 19:55:43 -0400
commitac5e55f5f2af5b92794c2aded46c6bae85b5f5ed (patch)
tree9367490586c84cba28652e443e3166d66c33b0d9 /static/freebsd/man4/bnxt.4 3.html
parent253e67c8b3a72b3a4757fdbc5845297628db0a4a (diff)
docs: Added All FreeBSD Manuals
Diffstat (limited to 'static/freebsd/man4/bnxt.4 3.html')
-rw-r--r--static/freebsd/man4/bnxt.4 3.html211
1 files changed, 211 insertions, 0 deletions
diff --git a/static/freebsd/man4/bnxt.4 3.html b/static/freebsd/man4/bnxt.4 3.html
new file mode 100644
index 00000000..9699d491
--- /dev/null
+++ b/static/freebsd/man4/bnxt.4 3.html
@@ -0,0 +1,211 @@
+<table class="head">
+ <tr>
+ <td class="head-ltitle">BNXT(4)</td>
+ <td class="head-vol">Device Drivers Manual</td>
+ <td class="head-rtitle">BNXT(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">bnxt</code> &#x2014; <span class="Nd">Broadcom
+ NetXtreme family 10Gb to 400Gb Ethernet driver</span></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
+<p class="Pp">To compile this driver into the kernel, place the following lines
+ in your kernel configuration file:</p>
+<div class="Bd Pp Bd-indent"><code class="Cd">device iflib</code>
+<br/>
+<code class="Cd">device bnxt</code></div>
+<p class="Pp">Alternatively, to load the driver as a module at boot time, place
+ the following line in <a class="Xr">loader.conf(5)</a>:</p>
+<div class="Bd Pp Bd-indent Li">
+<pre>if_bnxt_load=&quot;YES&quot;</pre>
+</div>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp">The <code class="Nm">bnxt</code> driver provides support for PCIe
+ NICs based on the Broadcom BCM573XX, BCM574XX, BCM575XX, and BCM576XX
+ Ethernet controllers.</p>
+<p class="Pp">For more information on configuring this device, see
+ <a class="Xr">ifconfig(8)</a>.</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">bnxt</code> driver supports the following
+ Broadcom 10Gb to 400Gb Ethernet controllers:</p>
+<p class="Pp"></p>
+<ul class="Bl-bullet Bl-compact">
+ <li>Broadcom BCM57301 NetXtreme-C 10Gb Ethernet Controller</li>
+ <li>Broadcom BCM57302 NetXtreme-C 10Gb/25Gb Ethernet Controller</li>
+ <li>Broadcom BCM57304 NetXtreme-C 10Gb/25Gb/40Gb/50Gb Ethernet Controller</li>
+ <li>Broadcom BCM57304 NetXtreme-C Ethernet Virtual Function</li>
+ <li>Broadcom BCM57314 NetXtreme-C Ethernet Virtual Function</li>
+ <li>Broadcom BCM57402 NetXtreme-E 10Gb Ethernet Controller</li>
+ <li>Broadcom BCM57402 NetXtreme-E Ethernet Partition</li>
+ <li>Broadcom BCM57404 NetXtreme-E 10Gb/25Gb Ethernet Controller</li>
+ <li>Broadcom BCM57404 NetXtreme-E Ethernet Virtual Function</li>
+ <li>Broadcom BCM57404 NetXtreme-E Partition</li>
+ <li>Broadcom BCM57406 NetXtreme-E 10GBASE-T Ethernet Controller</li>
+ <li>Broadcom BCM57406 NetXtreme-E Partition</li>
+ <li>Broadcom BCM57407 NetXtreme-E 10GBase-T Ethernet Controller</li>
+ <li>Broadcom BCM57407 NetXtreme-E 25Gb Ethernet Controller</li>
+ <li>Broadcom BCM57407 NetXtreme-E Partition</li>
+ <li>Broadcom BCM57412 NetXtreme-E Partition</li>
+ <li>Broadcom BCM57414 NetXtreme-E Ethernet Virtual Function</li>
+ <li>Broadcom BCM57414 NetXtreme-E Partition</li>
+ <li>Broadcom BCM57416 NetXtreme-E Partition</li>
+ <li>Broadcom BCM57417 NetXtreme-E Ethernet Partition</li>
+ <li>Broadcom BCM57454 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb Ethernet</li>
+ <li>Broadcom BCM57502 NetXtreme-E 10Gb/25Gb/50Gb Ethernet</li>
+ <li>Broadcom N425 BCM57504 NetXtreme-E 10Gb/25Gb Ethernet</li>
+ <li>Broadcom P425 BCM57504 NetXtreme-E 10Gb/25Gb Ethernet</li>
+ <li>Broadcom N1100 BCM57504 NetXtreme-E 10Gb/25Gb/50Gb/100Gb Ethernet</li>
+ <li>Broadcom N2100 BCM57508 Thor 10Gb/25Gb/50Gb/100Gb Ethernet</li>
+ <li>Broadcom P2100 BCM57508 Thor 10Gb/25Gb/50Gb/100Gb Ethernet</li>
+ <li>Broadcom N2200 BCM57608 Thor 2 10Gb/25Gb/50Gb/100Gb/200Gb Ethernet</li>
+ <li>Broadcom P2200 BCM57608 Thor 2 10Gb/25Gb/50Gb/100Gb/200Gb Ethernet</li>
+ <li>Broadcom N1400 BCM57608 Thor 2 25Gb/50Gb/100Gb/200Gb/400Gb Ethernet</li>
+ <li>Broadcom P1400 BCM57608 Thor 2 25Gb/50Gb/100Gb/200Gb/400Gb Ethernet</li>
+</ul>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SYSCTL_VARIABLES"><a class="permalink" href="#SYSCTL_VARIABLES">SYSCTL
+ VARIABLES</a></h1>
+<p class="Pp">These variables must be set before loading the driver, either via
+ <a class="Xr">loader.conf(5)</a> or through the use of
+ <a class="Xr">kenv(1)</a>. These are provided by the
+ <a class="Xr">iflib(4)</a> framework, and might be better documented
+ there.</p>
+<dl class="Bl-tag">
+ <dt id="dev.bnxt.X.iflib.override_nrxds"><var class="Va">dev.bnxt.X.iflib.override_nrxds</var></dt>
+ <dd>Override the number of RX descriptors for each queue. The value is a comma
+ separated list of three positive integers: the size of the completion
+ ring, the size of the receive ring, and the size of the aggregation ring
+ respectively. The completion ring should be at least the size of the
+ aggregation ring plus four times the size of the receive ring. These
+ numbers must be powers of two, and zero means to use the default. Defaults
+ to 0,0,0.</dd>
+ <dt id="dev.bnxt.X.iflib.override_ntxds"><var class="Va">dev.bnxt.X.iflib.override_ntxds</var></dt>
+ <dd>Override the number of TX descriptors for each queue. The value is a comma
+ separated list of two positive integers: the size of the completion ring,
+ and the size of the transmit ring respectively. The completion ring should
+ be at least twice the size of the transmit ring. These numbers must be
+ powers of two, and zero means to use the default. Defaults to 0,0.</dd>
+ <dt id="dev.bnxt.X.iflib.override_qs_enable"><var class="Va">dev.bnxt.X.iflib.override_qs_enable</var></dt>
+ <dd>When set, allows the number of transmit and receive queues to be
+ different. If not set, the lower of the number of TX or RX queues will be
+ used for both.</dd>
+ <dt id="dev.bnxt.X.iflib.override_nrxqs"><var class="Va">dev.bnxt.X.iflib.override_nrxqs</var></dt>
+ <dd>Set the number of RX queues. If zero, the number of RX queues is derived
+ from the number of cores on the socket connected to the controller.
+ Defaults to 0.</dd>
+ <dt id="dev.bnxt.X.iflib.override_ntxqs"><var class="Va">dev.bnxt.X.iflib.override_ntxqs</var></dt>
+ <dd>Set the number of TX queues. If zero, the number of TX queues is derived
+ from the number of cores on the socket connected to the controller.</dd>
+</dl>
+<p class="Pp">These <a class="Xr">sysctl(8)</a> variables can be changed at any
+ time:</p>
+<dl class="Bl-tag">
+ <dt id="dev.bnxt.X.vlan_only"><var class="Va">dev.bnxt.X.vlan_only</var></dt>
+ <dd>Require that incoming frames must have a VLAN tag on them that matches one
+ that is configured for the NIC. Normally, both frames that have a matching
+ VLAN tag and frames that have no VLAN tag are accepted. Defaults to
+ 0.</dd>
+ <dt id="dev.bnxt.X.vlan_strip"><var class="Va">dev.bnxt.X.vlan_strip</var></dt>
+ <dd>When non-zero the NIC strips VLAN tags on receive. Defaults to 0.</dd>
+ <dt id="dev.bnxt.X.rx_stall"><var class="Va">dev.bnxt.X.rx_stall</var></dt>
+ <dd>Enable buffering rather than dropping frames when there are no available
+ host RX buffers for DMA. Defaults to 0.</dd>
+ <dt id="dev.bnxt.X.rss_type"><var class="Va">dev.bnxt.X.rss_type</var></dt>
+ <dd>Comma-separated list of RSS hash types to support. Default is all types.
+ Defaults to ipv4,tcp_ipv4,udp_ipv4,ipv6,tcp_ipv6,udp_ipv6.</dd>
+ <dt id="dev.bnxt.X.rss_key"><var class="Va">dev.bnxt.X.rss_key</var></dt>
+ <dd>Current RSS key. Defaults to a randomly generated value which is generated
+ for each device during attach.</dd>
+ <dt id="dev.bnxt.X.ver.hwrm_min_ver"><var class="Va">dev.bnxt.X.ver.hwrm_min_ver</var></dt>
+ <dd>Minimum HWRM (HardWare Resource Manager) firmware API to support. If the
+ firmware implements an older version, a warning will be printed, and the
+ firmware should be upgraded. Defaults to 1.2.2.</dd>
+</dl>
+<p class="Pp">These <a class="Xr">sysctl(8)</a> variables are read-only:</p>
+<dl class="Bl-tag">
+ <dt id="dev.bnxt.X.if_name"><var class="Va">dev.bnxt.X.if_name</var></dt>
+ <dd>Current interface name of the device. This will normally be
+ <var class="Va">bnxtX</var>, but this can be changed using
+ <code class="Cm">ifconfig name</code>. This sysctl allows correlating an
+ interface with a child of <var class="Va">dev.bnxt</var>.</dd>
+ <dt id="dev.bnxt.X.nvram.*"><var class="Va">dev.bnxt.X.nvram.*</var></dt>
+ <dd>Information about the NVRAM device which contains the device
+ firmware.</dd>
+ <dt id="dev.bnxt.X.ver.*"><var class="Va">dev.bnxt.X.ver.*</var></dt>
+ <dd>Version-related information about the device and firmware:</dd>
+ <dt id="dev.bnxt.X.ver.hwrm_if"><var class="Va">dev.bnxt.X.ver.hwrm_if</var></dt>
+ <dd>Supported HWRM API version of the currently running firmware.</dd>
+ <dt id="dev.bnxt.X.ver.driver_hwrm_if"><var class="Va">dev.bnxt.X.ver.driver_hwrm_if</var></dt>
+ <dd>HWRM API version the driver was built to support.</dd>
+ <dt id="dev.bnxt.X.hwstats.*"><var class="Va">dev.bnxt.X.hwstats.*</var></dt>
+ <dd>Per-queue statistics tracked by the hardware.</dd>
+ <dt id="dev.bnxt.X.hwstats.port_stats.*"><var class="Va">dev.bnxt.X.hwstats.port_stats.*</var></dt>
+ <dd>Per-port statistics tracked by the hardware.</dd>
+ <dt id="dev.bnxt.X.hwstats.rxq0.drop_pkts"><var class="Va">dev.bnxt.X.hwstats.rxq0.drop_pkts</var></dt>
+ <dd>Number of packets dropped by hardware on queue zero. This number might
+ seem high, but the count includes packets dropped due to incorrect
+ destination MAC, unsubscribed multicast address, and other normal reasons
+ to ignore Ethernet frames.</dd>
+ <dt id="dev.bnxt.X.hwstats.rxq0.tpa_*"><var class="Va">dev.bnxt.X.hwstats.rxq0.tpa_*</var></dt>
+ <dd>statistics related to HW LRO.</dd>
+ <dt id="dev.bnxt.X.hw_lro.*"><var class="Va">dev.bnxt.X.hw_lro.*</var></dt>
+ <dd>Enable / Disable HW LRO feature. Defaults to disable. Enabling HW LRO
+ could cause issues when forwarding is enabled on host.</dd>
+ <dt id="dev.bnxt.X.fc"><var class="Va">dev.bnxt.X.fc</var></dt>
+ <dd>Enable / Disable Flow Control feature. Defaults to Enable</dd>
+</dl>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DIAGNOSTICS"><a class="permalink" href="#DIAGNOSTICS">DIAGNOSTICS</a></h1>
+<dl class="Bl-diag">
+ <dt>bnxt%d: %s command returned %s error.</dt>
+ <dd>Device firmware rejected a command from the driver. There might be a
+ driver/firmware HWRM API mismatch.</dd>
+ <dt>bnxt%d: Timeout sending %s (timeout: %d) seq %d</dt>
+ <dd>Device firmware unresponsive. A PCI device reset is likely needed.</dd>
+ <dt>bnxt%d: Timeout sending %s (timeout: %d) msg {0x%x 0x%x} len:%d v: %d</dt>
+ <dd>Partial firmware response. A PCI device reset is likely needed.
+ <p class="Pp">As of this writing, the system must be rebooted to initiate a
+ PCI device reset.</p>
+ </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">altq(4)</a>, <a class="Xr">arp(4)</a>,
+ <a class="Xr">iflib(4)</a>, <a class="Xr">netintro(4)</a>,
+ <a class="Xr">ng_ether(4)</a>, <a class="Xr">vlan(4)</a>,
+ <a class="Xr">ifconfig(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">bnxt</code> device driver first appeared in
+ <span class="Ux">FreeBSD 11.1</span>.</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
+<p class="Pp">The <code class="Nm">bnxt</code> driver was written by
+ <span class="An">Jack Vogel</span>
+ &lt;<a class="Mt" href="mailto:jfvogel@gmail.com">jfvogel@gmail.com</a>&gt;
+ and <span class="An">Stephen Hurd</span>
+ &lt;<a class="Mt" href="mailto:shurd@freebsd.org">shurd@freebsd.org</a>&gt;,
+ and is currently maintained by <span class="An">Broadcom Limited</span>
+ &lt;<a class="Mt" href="mailto:freebsd.pdl@broadcom.com">freebsd.pdl@broadcom.com</a>&gt;.</p>
+</section>
+</div>
+<table class="foot">
+ <tr>
+ <td class="foot-date">December 10, 2025</td>
+ <td class="foot-os">FreeBSD 15.0</td>
+ </tr>
+</table>