@@ -18,7 +18,7 @@ import sys
18
18
import sonic_platform
19
19
from sonic_platform_base .sonic_eeprom .eeprom_tlvinfo import TlvInfoDecoder
20
20
from sonic_py_common import device_info
21
- from swsscommon import swsscommon
21
+ from swsscommon . swsscommon import SonicV2Connector
22
22
from tabulate import tabulate
23
23
24
24
@@ -77,67 +77,49 @@ def print_eeprom_dict(tlv_dict):
77
77
def read_eeprom_from_db ():
78
78
tlv_dict = {}
79
79
80
- state_db = swsscommon . DBConnector ( 'STATE_DB' , 0 )
81
- tbl = swsscommon . Table ( state_db , EEPROM_INFO_TABLE )
80
+ db = SonicV2Connector ( host = "127.0.0.1" )
81
+ db . connect ( db . STATE_DB )
82
82
83
- status , fvs = tbl .get ('State' )
84
- status = bool (status )
85
- data = dict (fvs )
86
- if not status or data .get ('Initialized' , '0' ) != '1' :
83
+ initialized = db .get (db .STATE_DB , '{}|{}' .format (EEPROM_INFO_TABLE , 'State' ), 'Initialized' )
84
+ if initialized != '1' :
87
85
return None
88
86
89
- status , fvs = tbl .get ('TlvHeader' )
90
- status = bool (status )
91
- if not status :
92
- return None
93
-
94
- data = dict (fvs )
87
+ tlv_header = db .get_all (db .STATE_DB , '{}|{}' .format (EEPROM_INFO_TABLE , 'TlvHeader' ))
95
88
tlv_dict ['header' ] = {}
96
- tlv_dict ['header' ]['id' ] = data .get ('Id String' , 'N/A' )
97
- tlv_dict ['header' ]['version' ] = data .get ('Version' , 'N/A' )
98
- tlv_dict ['header' ]['length' ] = data .get ('Total Length' , 'N/A' )
89
+ tlv_dict ['header' ]['id' ] = tlv_header .get ('Id String' , 'N/A' )
90
+ tlv_dict ['header' ]['version' ] = tlv_header .get ('Version' , 'N/A' )
91
+ tlv_dict ['header' ]['length' ] = tlv_header .get ('Total Length' , 'N/A' )
99
92
100
93
tlv_dict ['tlv_list' ] = []
101
94
for tlv_code in range (TlvInfoDecoder ._TLV_CODE_PRODUCT_NAME , TlvInfoDecoder ._TLV_CODE_SERVICE_TAG + 1 ):
102
95
tlv_code_string = '0x{:02x}' .format (tlv_code )
103
- status , fvs = tbl .get (tlv_code_string )
104
- status = bool (status )
105
- if not status :
106
- continue
96
+ tlv_data = db .get_all (db .STATE_DB , '{}|{}' .format (EEPROM_INFO_TABLE , tlv_code_string ))
107
97
108
- data = dict (fvs )
109
98
tlv = {}
110
99
tlv ['code' ] = tlv_code_string
111
- tlv ['name' ] = data .get ('Name' , 'N/A' )
112
- tlv ['length' ] = data .get ('Len' , 'N/A' )
113
- tlv ['value' ] = data .get ('Value' , 'N/A' )
100
+ tlv ['name' ] = tlv_data .get ('Name' , 'N/A' )
101
+ tlv ['length' ] = tlv_data .get ('Len' , 'N/A' )
102
+ tlv ['value' ] = tlv_data .get ('Value' , 'N/A' )
114
103
tlv_dict ['tlv_list' ].append (tlv )
115
104
116
- status , fvs = tbl .get (' Checksum' )
117
- tlv_dict ['checksum_valid' ] = dict ( fvs ). get ( 'Valid' , '0' ) == '1'
105
+ checksum_valid = db .get (db . STATE_DB , '{}|{}' . format ( EEPROM_INFO_TABLE , ' Checksum' ), 'Valid ' )
106
+ tlv_dict ['checksum_valid' ] = ( checksum_valid == '1' )
118
107
119
108
return tlv_dict
120
109
121
110
122
111
def get_tlv_value_from_db (tlv_code ):
123
- state_db = swsscommon . DBConnector ( 'STATE_DB' , 0 )
124
- tbl = swsscommon . Table ( state_db , EEPROM_INFO_TABLE )
112
+ db = SonicV2Connector ( host = "127.0.0.1" )
113
+ db . connect ( db . STATE_DB )
125
114
126
- status , fvs = tbl .get ('State' )
127
- status = bool (status )
128
- data = dict (fvs )
129
- if not status or data .get ('Initialized' , '0' ) != '1' :
115
+ initialized = db .get (db .STATE_DB , '{}|{}' .format (EEPROM_INFO_TABLE , 'State' ), 'Initialized' )
116
+ if initialized != '1' :
130
117
print ('Failed to read system EEPROM info from DB' )
131
118
return None
132
119
133
120
tlv_code_string = '0x{:02x}' .format (tlv_code )
134
- status , fvs = tbl .get (tlv_code_string )
135
- status = bool (status )
136
- if not status :
137
- print ('Failed to read system EEPROM info from DB' )
138
- return None
139
121
140
- return dict ( fvs ) .get ('Value' )
122
+ return db .get (db . STATE_DB , '{}|{}' . format ( EEPROM_INFO_TABLE , tlv_code_string ), 'Value' )
141
123
142
124
143
125
def print_mgmt_mac (use_db = False ):
0 commit comments