git: dbb7ce7cc0ed - stable/14 - ixgbe: Re-enable the SFP laser during initialization

Kevin Bowling <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.src
Message-ID <6a82247f.1894c.4cbb00d8__29144.6234610461$1786913934$gmane$org@gitrepo.freebsd.org>
The branch stable/14 has been updated by kbowling:

URL: https://cgit.FreeBSD.org/src/commit/?id=dbb7ce7cc0edc24057e5215fe63d2094c39982c9

commit dbb7ce7cc0edc24057e5215fe63d2094c39982c9
Author:     Kevin Bowling <[email protected]>
AuthorDate: 2026-08-06 08:21:35 +0000
Commit:     Kevin Bowling <[email protected]>
CommitDate: 2026-08-16 20:58:18 +0000

    ixgbe: Re-enable the SFP laser during initialization
    
    ixgbe_if_stop() disables the transmit laser on every 82599 SFP fiber
    port, but the iflib initialization path did not re-enable it. Re-enable
    the laser before deferred SFP module setup so interface
    reinitialization cannot leave either single-speed or multispeed optics
    dark.
    
    The hardware wrapper is a no-op when laser control is unavailable. The
    placement follows Intel ix-3.4.39; this version deliberately applies to
    every SFP port affected by the stop path.
    
    (cherry picked from commit 545779a99290b7b7d94dece6c096ce230be91ff9)
---
 sys/dev/ixgbe/if_ix.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c
index 541ca96d3228..367f2b4d0f6e 100644
--- a/sys/dev/ixgbe/if_ix.c
+++ b/sys/dev/ixgbe/if_ix.c
@@ -1803,6 +1803,8 @@ ixgbe_config_link(if_ctx_t ctx)
 	sfp = ixgbe_is_sfp(hw);
 
 	if (sfp) {
+		/* ixgbe_if_stop() disables it on every 82599 SFP port. */
+		ixgbe_enable_tx_laser(hw);
 		sc->task_requests |= IXGBE_REQUEST_TASK_MOD;
 		iflib_admin_intr_deferred(ctx);
 	} else {
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.