Tool/software:
I am using the data flash script file to program the UCD chip from host. I use a function that converts and executes each step in the data flash script file into corresponding i2c read/write. I am observing that the programming fails with below error
Jan 01 00:05:03 system update: Executing 0x11, 0xE3, 0x0400000000
Jan 01 00:05:03 system p1: Traceback (most recent call last):
Jan 01 00:05:03 system p1: File "/usr/local/bin/obmc-nto-ucd-update.py", line 187, in <module>
Jan 01 00:05:03 system p1: execute_commands_from_csv(CONFIG_FILE)
Jan 01 00:05:03 system p1: File "/usr/local/bin/obmc-nto-ucd-update.py", line 105, in execute_commands_from_csv
Jan 01 00:05:03 system p1: execute_BLOCKWRITE(row)
Jan 01 00:05:03 system p1: File "/usr/local/bin/obmc-nto-ucd-update.py", line 53, in execute_BLOCKWRITE
Jan 01 00:05:03 system p1: bus.write_block_data(dev_addr, pmbus_cmd, data_arg)
Jan 01 00:05:03 system p1: File "/usr/lib/python3.8/site-packages/smbus2/smbus2.py", line 543, in write_block_data
Jan 01 00:05:03 system p1: ioctl(self.fd, I2C_SMBUS, msg)
Jan 01 00:05:03 system p1: OSError: [Errno 5] Input/output error
Note:
1. It's not that its failing from very first step but it fails with above error after executing certain steps from the dataflash script file.
2. The same program works without any issue on other system.
Any pointers to why this might be happening?