DellEMC: Change Platform LP mode API (#9391)
As part of SFP refactoring, LP mode is implemented for CMIS devices. CMIS devices has to invoke common API instead of HW pin.
This commit is contained in:
parent
e95ba9a408
commit
d041e600e2
@ -19,8 +19,6 @@ try:
|
|||||||
except ImportError as err:
|
except ImportError as err:
|
||||||
raise ImportError(str(err) + "- required module not found")
|
raise ImportError(str(err) + "- required module not found")
|
||||||
|
|
||||||
QSFP_DD_MODULE_ENC_OFFSET = 3
|
|
||||||
QSFP_DD_MODULE_ENC_WIDTH = 1
|
|
||||||
QSFP_INFO_OFFSET = 128
|
QSFP_INFO_OFFSET = 128
|
||||||
SFP_INFO_OFFSET = 0
|
SFP_INFO_OFFSET = 0
|
||||||
QSFP_DD_PAGE0 = 0
|
QSFP_DD_PAGE0 = 0
|
||||||
@ -205,11 +203,7 @@ class Sfp(SfpOptoeBase):
|
|||||||
lpmode_state = False
|
lpmode_state = False
|
||||||
try:
|
try:
|
||||||
if self.sfp_type == 'QSFP_DD':
|
if self.sfp_type == 'QSFP_DD':
|
||||||
lpmode = self.read_eeprom(QSFP_DD_MODULE_ENC_OFFSET, QSFP_DD_MODULE_ENC_WIDTH)
|
return SfpOptoeBase.get_lpmode(self)
|
||||||
if lpmode is not None:
|
|
||||||
if int(lpmode[0])>>1 == 1:
|
|
||||||
return True
|
|
||||||
return False
|
|
||||||
else:
|
else:
|
||||||
# Port offset starts with 0x4000
|
# Port offset starts with 0x4000
|
||||||
port_offset = 16384 + ((self.index-1) * 16)
|
port_offset = 16384 + ((self.index-1) * 16)
|
||||||
@ -265,12 +259,7 @@ class Sfp(SfpOptoeBase):
|
|||||||
"""
|
"""
|
||||||
try:
|
try:
|
||||||
if self.sfp_type == 'QSFP_DD':
|
if self.sfp_type == 'QSFP_DD':
|
||||||
if lpmode is True:
|
return SfpOptoeBase.set_lpmode(self, lpmode)
|
||||||
write_val = 0x10
|
|
||||||
else:
|
|
||||||
write_val = 0x0
|
|
||||||
|
|
||||||
self.write_eeprom(26, 1, bytearray([write_val]))
|
|
||||||
else:
|
else:
|
||||||
# Port offset starts with 0x4000
|
# Port offset starts with 0x4000
|
||||||
port_offset = 16384 + ((self.index-1) * 16)
|
port_offset = 16384 + ((self.index-1) * 16)
|
||||||
|
Reference in New Issue
Block a user