def read_mfr_fw_revision(i2c_bus, i2c_addr): """ @summary: Read MFR_FW_REVISION. """ ret = psu_upd_cmn.pmbus_read(i2c_bus, i2c_addr, MFR_FWUPLOAD_REVISION, 8) if ret != '' and len(ret) > 3 and ret[:2] == '0x': ascii_str = ''.join(chr(int(i, 16)) for i in ret.split()) return ascii_str
def read_mfr_fw_upload_status(i2c_bus, i2c_addr): """ @summary: Read MFR_FW_UPLOAD_STATUS. """ ret = psu_upd_cmn.pmbus_read(i2c_bus, i2c_addr, MFR_FWUPLOAD_STATUS, 1) if ret != '' and len(ret) > 3 and ret[:2] == '0x': upload_status = UPLOAD_STATUS_DICT.get(int(ret, 16)) print(upload_status) return upload_status
def read_mfr_fw_upload_mode(i2c_bus, i2c_addr): """ @summary: Read MFR_FW_UPLOAD_MODE. """ ret = psu_upd_cmn.pmbus_read(i2c_bus, i2c_addr, MFR_FWUPLOAD_MODE, 1) if ret != '' and len(ret) > 3 and ret[:2] == '0x': upload_mode = UPLOAD_MODE_DICT.get(int(ret, 16)) print(upload_mode) return upload_mode
def bootloader_status(i2c_bus, i2c_addr): """ @summary: read bootloader status. """ ret = psu_upd_cmn.pmbus_read(i2c_bus, i2c_addr, BOOTLOADER_STATUS_ADDR, 1) if ret != '' and len(ret) > 3 and ret[:2] == '0x': bl_status = bootloader_status_dict.get(int(ret, 16)) print(bl_status) return bl_status
def poll_upgrade_status(i2c_bus, i2c_addr): """ @summary: poll upgrade status. """ ret = psu_upd_cmn.pmbus_read(i2c_bus, i2c_addr, UPGRADE_STATUS_ADDR, 1) if ret != '' and len(ret) > 3 and ret[:2] == '0x': upgrade_status = upgrade_status_dict.get(int(ret, 16), "POLL_STATUS_UNDEFINED") # print(upgrade_status) return upgrade_status
def check_power_supply_status(i2c_bus, i2c_addr): """ @summary: check power supply status. """ ret = psu_upd_cmn.pmbus_read(i2c_bus, i2c_addr, PS_STATUS_ADDR, 3) if ret != '' and len(ret) > 3 and ret[:2] == '0x': # print("check_power_supply_status: {}".format(ret)) ps_status = [int(i, 16) for i in ret.split()] bootoader_mode = ps_status[1] & 1 << 2 bootload_complette = ps_status[1] & 1 << 1 power_down = ps_status[1] & 1 << 0 print("bootoader_mode:{0}, bootload_complette:{1}, power_down:{2}".format(bootoader_mode, bootload_complette, power_down))