Skip to content

Commit

Permalink
Take non-CMIS xcvrs out of lpmode in SFF Manager
Browse files Browse the repository at this point in the history
Fix non-CMIS transceivers in down state by bringing them out of
lpmode in the SFF Manager Task.
  • Loading branch information
peterbailey-arista committed Dec 4, 2024
1 parent b276e41 commit 072a3e6
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions sonic-xcvrd/xcvrd/sff_mgr.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@

from .xcvrd_utilities.port_event_helper import PortChangeObserver
from .xcvrd_utilities.xcvr_table_helper import XcvrTableHelper
from sonic_platform_base.sonic_xcvr.api.public.sff8472 import Sff8472Api
except ImportError as e:
raise ImportError(str(e) + " - required module not found")

Expand Down Expand Up @@ -435,6 +436,17 @@ def task_worker(self):
# Skip if these essential routines are not available
continue

set_lp_success = (
sfp.set_lpmode(False)
if isinstance(api, Sff8472Api)
else api.set_lpmode(False)
)
if not set_lp_success:
self.log_error(
"{}: Failed to take module out of low power mode.".format(
lport)
)

if active_lanes is None:
active_lanes = self.get_active_lanes_for_lport(lport, subport_idx,
len(lanes_list),
Expand Down

0 comments on commit 072a3e6

Please sign in to comment.