diff options
Diffstat (limited to 'static/freebsd/man4/genet.4 3.html')
| -rw-r--r-- | static/freebsd/man4/genet.4 3.html | 142 |
1 files changed, 142 insertions, 0 deletions
diff --git a/static/freebsd/man4/genet.4 3.html b/static/freebsd/man4/genet.4 3.html new file mode 100644 index 00000000..c23fd109 --- /dev/null +++ b/static/freebsd/man4/genet.4 3.html @@ -0,0 +1,142 @@ +<table class="head"> + <tr> + <td class="head-ltitle">GENET(4)</td> + <td class="head-vol">Device Drivers Manual (aarch64)</td> + <td class="head-rtitle">GENET(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">genet</code> — <span class="Nd">Raspberry + Pi 4 / BCM2711 Gigabit Ethernet controller 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 the kernel configuration file:</p> +<div class="Bd Pp Bd-indent"><code class="Cd">device miibus</code> +<br/> +<code class="Cd">device genet</code></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">genet</code> driver supports the BCM2711 + Ethernet controller as found on the Raspberry Pi 4.</p> +<p class="Pp">The following features are supported in the + <code class="Nm">genet</code> driver in <span class="Ux">FreeBSD</span>:</p> +<p class="Pp"></p> +<ul class="Bl-item Bd-indent Bl-compact"> + <li>IP/TCP/UDP checksum offload for IPv4 and IPv6</li> + <li>10/100/1000Mbps operation in full-duplex mode</li> + <li>10/100Mbps operation in half-duplex mode</li> +</ul> +<p class="Pp">Note that the operation of transmit checksum offload is coupled + for IPv4 and IPv6; to disable it, both must be disabled even if both address + families are not in use.</p> +<p class="Pp">The <code class="Nm">genet</code> driver supports the following + media types:</p> +<dl class="Bl-tag"> + <dt id="autoselect"><a class="permalink" href="#autoselect"><code class="Cm">autoselect</code></a></dt> + <dd>Enable autoselection of the media type and options. The user can manually + override the autoselected mode by adding media options to + <a class="Xr">rc.conf(5)</a>.</dd> + <dt id="10baseT/UTP"><a class="permalink" href="#10baseT/UTP"><code class="Cm">10baseT/UTP</code></a></dt> + <dd>Set 10Mbps operation. The <a class="Xr">ifconfig(8)</a> + <code class="Cm">mediaopt</code> option can also be used to select either + <code class="Cm">full-duplex</code> or <code class="Cm">half-duplex</code> + modes.</dd> + <dt id="100baseTX"><a class="permalink" href="#100baseTX"><code class="Cm">100baseTX</code></a></dt> + <dd>Set 100Mbps (Fast Ethernet) operation. The <a class="Xr">ifconfig(8)</a> + <code class="Cm">mediaopt</code> option can also be used to select either + <code class="Cm">full-duplex</code> or <code class="Cm">half-duplex</code> + modes.</dd> + <dt id="1000baseT"><a class="permalink" href="#1000baseT"><code class="Cm">1000baseT</code></a></dt> + <dd>Set 1000baseT operation over twisted pair. Only + <code class="Cm">full-duplex</code> mode is supported.</dd> +</dl> +<p class="Pp">The <code class="Nm">genet</code> driver supports the following + media options set with the <code class="Cm">mediaopt</code> option to the + <a class="Xr">ifconfig(8)</a> command:</p> +<dl class="Bl-tag"> + <dt id="full-duplex"><a class="permalink" href="#full-duplex"><code class="Cm">full-duplex</code></a></dt> + <dd>Force full duplex operation.</dd> + <dt id="half-duplex"><a class="permalink" href="#half-duplex"><code class="Cm">half-duplex</code></a></dt> + <dd>Force half duplex operation.</dd> +</dl> +<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">genet</code> driver supports the Ethernet + controller portion of the Broadcom BCM2711 on the Raspberry Pi 4 Model B and + related systems. It utilizes the BCM54213PE PHY.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="LOADER_TUNABLES"><a class="permalink" href="#LOADER_TUNABLES">LOADER + TUNABLES</a></h1> +<p class="Pp">Tunables can be set at the <a class="Xr">loader(8)</a> prompt + before booting the kernel or stored in <a class="Xr">loader.conf(5)</a>. The + following loader tunable variable is available, and is also available as a + read-only <a class="Xr">sysctl(8)</a> variable:</p> +<dl class="Bl-tag"> + <dt id="hw.genet.rx_batch"><var class="Va">hw.genet.rx_batch</var></dt> + <dd>The maximum number of packets to pass to the link-layer input routine at + one time. The default is 16.</dd> +</dl> +</section> +<section class="Sh"> +<h1 class="Sh" id="SYSCTL_VARIABLES"><a class="permalink" href="#SYSCTL_VARIABLES">SYSCTL + VARIABLES</a></h1> +<p class="Pp">The following variable is available as a + <a class="Xr">sysctl(8)</a> variable:</p> +<dl class="Bl-tag"> + <dt id="hw.genet.tx_hdr_min"><var class="Va">hw.genet.tx_hdr_min</var></dt> + <dd>When the driver is given an output packet in a buffer chain in which the + first buffer contains only the Ethernet header, the number of bytes of the + packet to add to the Ethernet header in the first buffer. Certain packets + may be lost if this value is too small. The default value is 56, and is + sufficient for the observed cases to date.</dd> +</dl> +</section> +<section class="Sh"> +<h1 class="Sh" id="DIAGNOSTICS"><a class="permalink" href="#DIAGNOSTICS">DIAGNOSTICS</a></h1> +<p class="Pp">The <code class="Nm">genet</code> driver has no diagnostics that + are likely in normal operation. However, when the + <code class="Cm">debug</code> option is set with + <a class="Xr">ifconfig(8)</a>, most failures that cause packet loss in the + transmit and receive paths cause a cryptic diagnostic message naming the + failure. These messages generally make sense only when looking at the driver + source.</p> +</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">miibus(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">genet</code> device driver first appeared in + <span class="Ux">FreeBSD 13.0</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">genet</code> driver was written by + <span class="An">Mike Karels</span> + <<a class="Mt" href="mailto:karels@freebsd.org">karels@freebsd.org</a>>. + Portions are derived from the bcmgenet driver in + <span class="Ux">NetBSD</span> by Jared McNeill, and parts of the structure + and common code are from the awg driver for the Allwinner EMAC by Jared + McNeill.</p> +</section> +</div> +<table class="foot"> + <tr> + <td class="foot-date">December 8, 2021</td> + <td class="foot-os">FreeBSD 15.0</td> + </tr> +</table> |
