Skip to content

Commit 072a3e6

Browse files
Take non-CMIS xcvrs out of lpmode in SFF Manager
Fix non-CMIS transceivers in down state by bringing them out of lpmode in the SFF Manager Task.
1 parent b276e41 commit 072a3e6

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

sonic-xcvrd/xcvrd/sff_mgr.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

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

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

439+
set_lp_success = (
440+
sfp.set_lpmode(False)
441+
if isinstance(api, Sff8472Api)
442+
else api.set_lpmode(False)
443+
)
444+
if not set_lp_success:
445+
self.log_error(
446+
"{}: Failed to take module out of low power mode.".format(
447+
lport)
448+
)
449+
438450
if active_lanes is None:
439451
active_lanes = self.get_active_lanes_for_lport(lport, subport_idx,
440452
len(lanes_list),

0 commit comments

Comments
 (0)