Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Feb 2026 22:28:17 +0100
From:      Chris Longros <chris.longros@gmail.com>
To:        freebsd-net@freebsd.org
Subject:   rge(4) RTL8125 2.5GbE testing: 2500baseT media type not available on 16.0-CURRENT
Message-ID:  <CAGnpK8Zj5SW6DGeLwTm50RSW0FVKuAxC8A5TXmEzkcBVbAthSg@mail.gmail.com>

index | next in thread | raw e-mail

[-- Attachment #1 --]
Hi all,

I've been testing the rge(4) driver on FreeBSD 16.0-CURRENT
(main-n283549-6d37c3db62ba, Feb 2 2026) with a Realtek RTL8125 2.5GbE
Controller via VFIO/PCI passthrough from a Linux (Arch) host into a
QEMU/KVM virtual machine.

The driver attaches and works — DHCP, ping, DNS resolution, and general
traffic all function correctly. However, the NIC negotiates at 1000baseT
only, and 2500baseT is not available as a media type.

Attempting to set 2500baseT returns:
  ifconfig rge0 media 2500baseT mediaopt full-duplex
  ifconfig: unknown media subtype: 2500baseT

The OpenBSD rge(4) man page documents the RTL8125 as capable of 2500Mbps
operation, and the FreshPorts entry for net/realtek-rge-kmod lists it as a
2500baseT adapter. It appears the FreeBSD port does not yet expose this
media type.

Hardware:
  Realtek RTL8125 2.5GbE Controller (rev 05)
  Gigabyte subvendor (vendor=0x10ec device=0x8125 subvendor=0x1458
subdevice=0xe000)

dmesg:
  rge0: <RTL8125> port 0xc000-0xc0ff mem
0xc000000000-0xc00000ffff,0xc000010000-0xc000013fff irq 11 at device 4.0 on
pci0
  rge0: Ethernet address: xx:xx:xx:xx:xx:xx
  rge0: link state changed to DOWN
  rge0: link state changed to UP

pciconf -lv:
  rge0@pci0:0:4:0: class=0x020000 rev=0x05 hdr=0x00 vendor=0x10ec
device=0x8125 subvendor=0x1458 subdevice=0xe000
      vendor     = 'Realtek Semiconductor Co., Ltd.'
      device     = 'RTL8125 2.5GbE Controller'
      class      = network
      subclass   = ethernet

ifconfig rge0:
  rge0: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP>
metric 0 mtu 1500
      options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
      ether xx:xx:xx:xx:xx:xx
      media: Ethernet autoselect (1000baseT <full-duplex>)
      status: active

sysctl dev.rge.0 (excerpt):
  dev.rge.0.mac_stats.rge_tx_er: 6
  dev.rge.0.mac_stats.rge_rx_ok: 26274
  dev.rge.0.mac_stats.rge_tx_ok: 13115
  dev.rge.0.drv_stats.intr_system_errcnt: 0
  dev.rge.0.drv_stats.tx_watchdog_timeout_cnt: 0
  dev.rge.0.drv_stats.transmit_full_cnt: 0
  dev.rge.0.drv_stats.rx_ether_csum_err: 0

Additional observations:
- Hardware checksum offload (IPv4, TCP, UDP) works correctly — all
csum_valid counters match csum_exists.
- No system errors, no watchdog timeouts, no transmit queue overflows.
- The 6 TX errors appear related to early link negotiation.
- The options field (0x9b) is limited compared to em0 — missing TSO, LRO,
jumbo frames, WoL, etc.
- Testing was via VFIO passthrough, so the NIC had direct hardware access.

I'm happy to run additional tests or provide more data if useful. I
understand the driver was recently imported from OpenBSD and is still
maturing — just wanted to contribute a data point.

Cheers,
Chris

[-- Attachment #2 --]
<div dir="ltr">Hi all,<br><br>I&#39;ve been testing the rge(4) driver on FreeBSD 16.0-CURRENT (main-n283549-6d37c3db62ba, Feb 2 2026) with a Realtek RTL8125 2.5GbE Controller via VFIO/PCI passthrough from a Linux (Arch) host into a QEMU/KVM virtual machine.<br><br>The driver attaches and works — DHCP, ping, DNS resolution, and general traffic all function correctly. However, the NIC negotiates at 1000baseT only, and 2500baseT is not available as a media type.<br><br>Attempting to set 2500baseT returns:<br>  ifconfig rge0 media 2500baseT mediaopt full-duplex<br>  ifconfig: unknown media subtype: 2500baseT<br><br>The OpenBSD rge(4) man page documents the RTL8125 as capable of 2500Mbps operation, and the FreshPorts entry for net/realtek-rge-kmod lists it as a 2500baseT adapter. It appears the FreeBSD port does not yet expose this media type.<br><br>Hardware:<br>  Realtek RTL8125 2.5GbE Controller (rev 05)<br>  Gigabyte subvendor (vendor=0x10ec device=0x8125 subvendor=0x1458 subdevice=0xe000)<br><br>dmesg:<br>  rge0: &lt;RTL8125&gt; port 0xc000-0xc0ff mem 0xc000000000-0xc00000ffff,0xc000010000-0xc000013fff irq 11 at device 4.0 on pci0<br>  rge0: Ethernet address: xx:xx:xx:xx:xx:xx<br>  rge0: link state changed to DOWN<br>  rge0: link state changed to UP<br><br>pciconf -lv:<br>  rge0@pci0:0:4:0: class=0x020000 rev=0x05 hdr=0x00 vendor=0x10ec device=0x8125 subvendor=0x1458 subdevice=0xe000<br>      vendor     = &#39;Realtek Semiconductor Co., Ltd.&#39;<br>      device     = &#39;RTL8125 2.5GbE Controller&#39;<br>      class      = network<br>      subclass   = ethernet<br><br>ifconfig rge0:<br>  rge0: flags=1008843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP&gt; metric 0 mtu 1500<br>      options=9b&lt;RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM&gt;<br>      ether xx:xx:xx:xx:xx:xx<br>      media: Ethernet autoselect (1000baseT &lt;full-duplex&gt;)<br>      status: active<br><br>sysctl dev.rge.0 (excerpt):<br>  dev.rge.0.mac_stats.rge_tx_er: 6<br>  dev.rge.0.mac_stats.rge_rx_ok: 26274<br>  dev.rge.0.mac_stats.rge_tx_ok: 13115<br>  dev.rge.0.drv_stats.intr_system_errcnt: 0<br>  dev.rge.0.drv_stats.tx_watchdog_timeout_cnt: 0<br>  dev.rge.0.drv_stats.transmit_full_cnt: 0<br>  dev.rge.0.drv_stats.rx_ether_csum_err: 0<br><br>Additional observations:<br>- Hardware checksum offload (IPv4, TCP, UDP) works correctly — all csum_valid counters match csum_exists.<br>- No system errors, no watchdog timeouts, no transmit queue overflows.<br>- The 6 TX errors appear related to early link negotiation.<br>- The options field (0x9b) is limited compared to em0 — missing TSO, LRO, jumbo frames, WoL, etc.<br>- Testing was via VFIO passthrough, so the NIC had direct hardware access.<br><br>I&#39;m happy to run additional tests or provide more data if useful. I understand the driver was recently imported from OpenBSD and is still maturing — just wanted to contribute a data point.<br><br>Cheers,<br>Chris</div>
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGnpK8Zj5SW6DGeLwTm50RSW0FVKuAxC8A5TXmEzkcBVbAthSg>