1.\" 2.\" Copyright (c) 2025 Adrian Chadd <adrian@FreeBSD.org> 3.\" 4.\" SPDX-License-Identifier: BSD-2-Clause 5.\" 6.Dd December 18, 2025 7.Dt RGE 4 8.Os 9.Sh NAME 10.Nm rge 11.Nd RealTek RTL8125/RTL8126/RTL8127/Killer E3000 PCIe Ethernet adapter driver 12.Sh SYNOPSIS 13To compile this driver into the kernel, 14place the following lines in your 15kernel configuration file: 16.Bd -ragged -offset indent 17.Cd "device rge" 18.Ed 19.Pp 20Alternatively, to load the driver as a 21module at boot time, place the following line in 22.Xr loader.conf 5 : 23.Bd -literal -offset indent 24if_rge_load="YES" 25.Ed 26.Sh DESCRIPTION 27The 28.Nm 29driver provides support for various NICs based on the RealTek RTL8125, 30RTL8126 and RTL8127 PCIe Ethernet controllers. 31.Pp 32All of the NICs supported by this driver support 10, 100 and 1000Mbit 33over CAT5 cable. 34NICs based on the RTL8125 additionally support 2.5Gbit over CAT6 cable. 35NICs based on the RTL8126 additionally support 2.5Gbit and 5Gbit over CAT6 36cable. 37NICs based on the RTL8127 additionally support 2.5Gbit, 5Gbit and 10Gbit 38over CAT6 cable. 39.Pp 40All NICs supported by the 41.Nm 42driver have TCP/IP checksum offload and hardware VLAN tagging/insertion 43features, and use a descriptor-based DMA mechanism. 44They are also 45capable of TCP large send (TCP segmentation offload). 46.Pp 47The RTL8125, RTL8126 and RTL8127 devices are single-chip solutions combining 48both a MAC and PHY. 49Standalone cards are available in 1x PCIe models. 50.Pp 51The RTL8125, RTL8126 and RTL8127 also support jumbo frames, which can be 52configured via the interface MTU setting. 53The MTU is limited to 9126. 54Selecting an MTU larger than 1500 bytes with the 55.Xr ifconfig 8 56utility configures the adapter to receive and transmit jumbo frames. 57.Pp 58The 59.Nm 60driver supports the following media types: 61.Bl -tag -width "10baseT/UTP" 62.It Cm autoselect 63Enable autoselection of the media type and options. 64The user can manually override 65the autoselected mode by adding media options to 66.Xr rc.conf 5 . 67.It Cm 10baseT/UTP 68Set 10Mbps operation. 69The 70.Xr ifconfig 8 71.Cm mediaopt 72option can also be used to select either 73.Cm full-duplex 74or 75.Cm half-duplex 76modes. 77.It Cm 100baseTX 78Set 100Mbps (Fast Ethernet) operation. 79The 80.Xr ifconfig 8 81.Cm mediaopt 82option can also be used to select either 83.Cm full-duplex 84or 85.Cm half-duplex 86modes. 87.It Cm 1000baseTX 88Set 1000baseTX operation over twisted pair. 89The RealTek gigE chips support 1000Mbps in 90.Cm full-duplex 91mode only. 92.It Cm 2500baseTX 93Set 2500baseTX operation over twisted pair. 94The RealTek devices support 2.5Gbit in 95.Cm full-duplex 96mode only. 97.It Cm 5000baseTX 98Set 5000baseTX operation over twisted pair. 99The RealTek devices support 5Gbit in 100.Cm full-duplex 101mode only. 102.It Cm 10000baseTX 103Set 10000baseTX operation over twisted pair. 104The RealTek devices support 10Gbit in 105.Cm full-duplex 106mode only. 107.El 108.Pp 109The 110.Nm 111driver supports the following media options: 112.Bl -tag -width "full-duplex" 113.It Cm full-duplex 114Force full duplex operation. 115.It Cm half-duplex 116Force half duplex operation. 117.El 118.Pp 119For more information on configuring this device, see 120.Xr ifconfig 8 . 121.Sh HARDWARE 122The 123.Nm 124driver supports RealTek RTL8125, RTL8126, RTL8127 and Killer E3000 based 125PCIe 1GB to 1GB Ethernet devices. 126.Sh SYSCTL VARIABLES 127The following variables are available as both 128.Xr sysctl 8 129variables and 130.Xr loader 8 131tunables: 132.Bl -tag -width "xxxxxx" 133.It Va dev.rge.%d.debug 134Configure runtime debug output. This is a 32 bit bitmask. 135.El 136.Sh DIAGNOSTICS 137.Bl -diag 138.It "rge%d: watchdog timeout" 139The device has stopped responding to the network, or there is a problem with 140the network connection (cable). 141.El 142.Sh SEE ALSO 143.Xr altq 4 , 144.Xr arp 4 , 145.Xr miibus 4 , 146.Xr netintro 4 , 147.Xr ng_ether 4 , 148.Xr polling 4 , 149.Xr vlan 4 , 150.Xr ifconfig 8 151.Rs 152.%U https://www.realtek.com/ 153.Re 154.Sh HISTORY 155The 156.Nm 157device driver first appeared in 158.Fx 16.0 . 159.Sh AUTHORS 160The 161.Nm 162driver was written by 163.An Kevin Lo Aq Mt kevlo@openbsd.org 164and ported to FreeBSD by 165.An Adrian Chadd Aq Mt adrian@freebsd.org . 166