rge(4) RTL8126 simple testing

From: Sean C. Farley <scf_at_FreeBSD.org>
Date: Sun, 01 Mar 2026 03:48:01 UTC
I recently upgraded my home network using a few BrosTrend 5Gb
cards (RTL8126) with 14-STABLE (1eb2beb3686c) and the latest commit 
(3170b35) to the GitHub repo for if_rge.  It was either these cards or a 
couple of Intel X550-T2 cards, but less power and less heat were the 
deciding factors.

For the most part, they seem to work very well, except that they cannot 
negotiate a 2500Base-T connection.  They can negotiate 1000baseT and 
5000Base-T.  This was with two different cards connecting to two 
different devices.  If manually set, they will try for awhile than 
fall-back to 1000baseT.

One other oddity is that rge0 has "ClockPM disabled", but I have not 
looked into that.

The networking hardware:
- 3 BrosTrend 5Gb NIC's[1]  (5Gb)
- Zyxel NWA130BE[2]  (2.5Gb port)
- TRENDnet TEG-S591[3]  (connected the NIC to its 10Gb port)
- Nokia ONT XS-010X-Q[4]  (10Gb port)

ifconfig:
rge0: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
 	options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
 	capabilities=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
         media: Ethernet autoselect (5000Base-T <full-duplex>)
 	status: active
 	supported media:
 		media autoselect
 		media 5000Base-T mediaopt full-duplex
 		media 5000Base-T
 		media 2500Base-T mediaopt full-duplex
 		media 2500Base-T
 		media 1000baseT mediaopt full-duplex
 		media 1000baseT
 		media 100baseTX mediaopt full-duplex
 		media 100baseTX
 		media 10baseT/UTP mediaopt full-duplex
 		media 10baseT/UTP
 	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
 	drivername: rge0
rge1: flags=1008943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
 	options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
 	capabilities=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
 	media: Ethernet autoselect (5000Base-T <full-duplex>)
 	status: active
 	supported media:
 		media autoselect
 		media 5000Base-T mediaopt full-duplex
 		media 5000Base-T
 		media 2500Base-T mediaopt full-duplex
 		media 2500Base-T
 		media 1000baseT mediaopt full-duplex
 		media 1000baseT
 		media 100baseTX mediaopt full-duplex
 		media 100baseTX
 		media 10baseT/UTP mediaopt full-duplex
 		media 10baseT/UTP
 	nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
 	drivername: rge1
rge2: flags=1008943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
 	options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
 	capabilities=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
 	media: Ethernet Other (1000baseT <full-duplex>)
 	status: active
 	supported media:
 		media autoselect
 		media 5000Base-T mediaopt full-duplex
 		media 5000Base-T
 		media 2500Base-T mediaopt full-duplex
 		media 2500Base-T
 		media 1000baseT mediaopt full-duplex
 		media 1000baseT
 		media 100baseTX mediaopt full-duplex
 		media 100baseTX
 		media 10baseT/UTP mediaopt full-duplex
 		media 10baseT/UTP
 	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
 	drivername: rge2

pciconf:
rge0@pci0:1:0:0:	class=0x020000 rev=0x01 hdr=0x00 vendor=0x10ec device=0x8126 subvendor=0x10ec subdevice=0x0123
     vendor     = 'Realtek Semiconductor Co., Ltd.'
     device     = 'RTL8126 5GbE Controller'
     class      = network
     subclass   = ethernet
     bar   [10] = type I/O Port, range 32, base 0xe000, size 256, enabled
     bar   [18] = type Memory, range 64, base 0xf7600000, size 65536, enabled
     bar   [20] = type Memory, range 64, base 0xf7610000, size 16384, enabled
     cap 01[40] = powerspec 3  supports D0 D1 D2 D3  current D0
     cap 05[50] = MSI supports 1 message, 64 bit, vector masks enabled with 1 message
     cap 10[70] = PCI-Express 2 endpoint MSI 1 max data 256(512) RO
                  max read 512
                  link x1(x1) speed 8.0(8.0) ASPM disabled(L0s/L1) ClockPM disabled
     cap 11[b0] = MSI-X supports 32 messages
                  Table in map 0x20[0x0], PBA in map 0x20[0x800]
     cap 03[d0] = VPD
     ecap 0001[100] = AER 2 0 fatal 0 non-fatal 1 corrected
     ecap 0002[148] = VC 1 max VC0
     ecap 0003[170] = Serial 1 01000000684ce000
     ecap 0019[180] = PCIe Sec 1 lane errors 0
     ecap 0017[190] = TPH Requester 1
     ecap 0018[21c] = LTR 1
     ecap 001e[224] = L1 PM Substates 1
     ecap 000b[234] = Vendor [1] ID 0002 Rev 4 Length 256
rge1@pci0:4:0:0:	class=0x020000 rev=0x01 hdr=0x00 vendor=0x10ec device=0x8126 subvendor=0x10ec subdevice=0x0123
     vendor     = 'Realtek Semiconductor Co., Ltd.'
     device     = 'RTL8126 5GbE Controller'
     class      = network
     subclass   = ethernet
     bar   [10] = type I/O Port, range 32, base 0xd000, size 256, enabled
     bar   [18] = type Memory, range 64, base 0xf7500000, size 65536, enabled
     bar   [20] = type Memory, range 64, base 0xf7510000, size 16384, enabled
     cap 01[40] = powerspec 3  supports D0 D1 D2 D3  current D0
     cap 05[50] = MSI supports 1 message, 64 bit, vector masks enabled with 1 message
     cap 10[70] = PCI-Express 2 endpoint MSI 1 max data 256(512) RO
                  max read 512
                  link x1(x1) speed 8.0(8.0) ASPM disabled(L0s/L1) ClockPM enabled
     cap 11[b0] = MSI-X supports 32 messages
                  Table in map 0x20[0x0], PBA in map 0x20[0x800]
     cap 03[d0] = VPD
     ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
     ecap 0002[148] = VC 1 max VC0
     ecap 0003[170] = Serial 1 01000000684ce000
     ecap 0019[180] = PCIe Sec 1 lane errors 0
     ecap 0017[190] = TPH Requester 1
     ecap 0018[21c] = LTR 1
     ecap 001e[224] = L1 PM Substates 1
     ecap 000b[234] = Vendor [1] ID 0002 Rev 4 Length 256
rge2@pci0:5:0:0:	class=0x020000 rev=0x01 hdr=0x00 vendor=0x10ec device=0x8126 subvendor=0x10ec subdevice=0x0123
     vendor     = 'Realtek Semiconductor Co., Ltd.'
     device     = 'RTL8126 5GbE Controller'
     class      = network
     subclass   = ethernet
     bar   [10] = type I/O Port, range 32, base 0xc000, size 256, enabled
     bar   [18] = type Memory, range 64, base 0xf7400000, size 65536, enabled
     bar   [20] = type Memory, range 64, base 0xf7410000, size 16384, enabled
     cap 01[40] = powerspec 3  supports D0 D1 D2 D3  current D0
     cap 05[50] = MSI supports 1 message, 64 bit, vector masks enabled with 1 message
     cap 10[70] = PCI-Express 2 endpoint MSI 1 max data 256(512) RO
                  max read 512
                  link x1(x1) speed 8.0(8.0) ASPM disabled(L0s/L1) ClockPM enabled
     cap 11[b0] = MSI-X supports 32 messages
                  Table in map 0x20[0x0], PBA in map 0x20[0x800]
     cap 03[d0] = VPD
     ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
     ecap 0002[148] = VC 1 max VC0
     ecap 0003[170] = Serial 1 01000000684ce000
     ecap 0019[180] = PCIe Sec 1 lane errors 0
     ecap 0017[190] = TPH Requester 1
     ecap 0018[21c] = LTR 1
     ecap 001e[224] = L1 PM Substates 1
     ecap 000b[234] = Vendor [1] ID 0002 Rev 4 Length 256

Sean
   1. https://www.brostrend.com/products/p2
   2. https://www.zyxel.com/us/en-us/products/wireless/be11000-6-stream-wifi-7-triple-radio-nebulaflex-access-point-nwa130be
   3. https://www.trendnet.com/products/2_5g-10g-switches/9-port-multi-gig-switch-TEG-S591-v1
   4. https://www.nokia.com/asset/210704/
-- 
scf@FreeBSD.org