rge: add Wake-on-LAN support for magic packet

Advertise IFCAP_WOL_MAGIC when PCI power management is available
and enable it by default.  On suspend or shutdown, rge_setwol()
enables the WOL_MAGIC and WOL_LANWAKE bits in CFG3/CFG5, disables
the RXDV gate, and enables PM so the NIC stays powered to watch
for magic packets.

Move hardware-specific WOL register configuration into
rge_wol_config() in if_rge_hw.c to keep hardware-specific
functions in sync with OpenBSD.

Update rge.4 to document WoL support.

Tested on FreeBSD 16.0-CURRENT bare metal with Realtek RTL8125
on a Gigabyte B650 Gaming X AX motherboard.

Signed-off-by: Christos Longros <chris.longros@gmail.com>

Reviewed by:	adrian
Differential Revision:	https://reviews.freebsd.org/D56259
This commit is contained in:
Christos Longros
2026-04-10 10:31:38 -07:00
committed by Adrian Chadd
parent de9fe28ab8
commit fc68534a9a
4 changed files with 52 additions and 67 deletions
+3 -3
View File
@@ -3,7 +3,7 @@
.\"
.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.Dd December 18, 2025
.Dd April 5, 2026
.Dt RGE 4
.Os
.Sh NAME
@@ -39,8 +39,8 @@ over CAT6 cable.
.Pp
All NICs supported by the
.Nm
driver have TCP/IP checksum offload and hardware VLAN tagging/insertion
features, and use a descriptor-based DMA mechanism.
driver have TCP/IP checksum offload, hardware VLAN tagging/insertion
features, Wake On Lan (WOL), and use a descriptor-based DMA mechanism.
They are also
capable of TCP large send (TCP segmentation offload).
.Pp