Skip to content

Commit f88734b

Browse files
Nadiyajleveque
authored andcommitted
Fix sfp cli commands (#1482)
Signed-off-by: Nadiya Stetskovych <Nadiya.Stetskovych@cavium.com>
1 parent 913a62c commit f88734b

1 file changed

Lines changed: 55 additions & 8 deletions

File tree

  • device/accton/x86_64-accton_as7512_32x-r0/plugins
Lines changed: 55 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,72 @@
11
#! /usr/bin/python
22

33
try:
4-
from sonic_sfp.sfputilbase import sfputilbase
4+
from sonic_sfp.sfputilbase import SfpUtilBase
55
except ImportError, e:
66
raise ImportError (str(e) + "- required module not found")
77

88

9-
class sfputil(sfputilbase):
9+
class SfpUtil(SfpUtilBase):
1010
"""Platform specific sfputil class"""
1111

12-
port_start = 0
13-
port_end = 31
12+
_port_start = 0
13+
_port_end = 31
1414
ports_in_block = 32
1515

1616

17-
port_to_eeprom_mapping = {}
17+
_port_to_eeprom_mapping = {}
18+
1819
_qsfp_ports = range(0, ports_in_block + 1)
1920

20-
def __init__(self, port_num):
21+
def __init__(self):
2122
# Override port_to_eeprom_mapping for class initialization
2223
eeprom_path = '/sys/bus/i2c/devices/{0}-0050/sfp_eeprom'
2324
for x in range(self.port_start, self.port_end + 1):
24-
self.port_to_eeprom_mapping[x] = eeprom_path.format(x + 18)
25-
sfputilbase.__init__(self, port_num)
25+
self._port_to_eeprom_mapping[x] = eeprom_path.format(x + 18)
26+
SfpUtilBase.__init__(self)
27+
28+
def reset(self, port_num):
29+
raise NotImplementedErro
30+
31+
def set_low_power_mode(self, port_nuM, lpmode):
32+
raise NotImplementedErro
33+
34+
def get_low_power_mode(self, port_num):
35+
raise NotImplementedErro
36+
37+
def get_presence(self, port_num):
38+
# Check for invalid port_num
39+
if port_num < self._port_start or port_num > self._port_end:
40+
return False
41+
42+
path = "/sys/bus/i2c/devices/{0}-0050/sfp_is_present"
43+
port_ps = path.format(port_num+18)
44+
45+
46+
try:
47+
reg_file = open(port_ps)
48+
except IOError as e:
49+
print "Error: unable to open file: %s" % str(e)
50+
return False
51+
52+
reg_value = reg_file.readline().rstrip()
53+
if reg_value == '1':
54+
return True
55+
56+
return False
57+
58+
@property
59+
def port_start(self):
60+
return self._port_start
61+
62+
@property
63+
def port_end(self):
64+
return self._port_end
65+
66+
@property
67+
def qsfp_ports(self):
68+
return range(0, self.ports_in_block + 1)
69+
70+
@property
71+
def port_to_eeprom_mapping(self):
72+
return self._port_to_eeprom_mapping

0 commit comments

Comments
 (0)