Forum Discussion
rsu_client failing to write to slot
- 4 months ago
Dear all,
I had the same issue. Here is my solution for future reference.
I can reproduce this using the following script:
for i in {1..2000}; do
echo "Iteration $i"
rsu_client --erase 0 || break
rsu_client --add update.rpd --slot 0 || break
done
Using this script the problem occurs every 508th iteration on my system. Once in the error state, I can only get out of it by flashing the .jic file. Running the commands in U-Boot did not work for me.
In iteration 1-507 the rsu_client performs a "write" to update the CPB. In the 508th iteration it performs an additional "erase" before the "write". This is why it occurs so infrequently.
For me the fix was to increase the size of the SPT and CPB partitions to the erase size of my QSPI flash (64KiB) in the programming file generator file (.pfg).
Kind Regards,
Eric Opitz
Hello Aik!
sorry for the late reply, for some reason I did not get an email update...
Can you kindly clarify your first question? Are you asking if the JIC file that I am using to rewrite the entire flash is the same JIC file that is already on it?
if so, yes, The JIC file is configured to have 3 partitions ( and the backup image). Writing the JIC file will get the QSPI and RSU client out of this error stage. Currently, the only way that I know to recover from this state is to use the original JIC file.
regarding the second question, I have to get back to you next week, I will run the test in u-boot as that requires a serial connection. I will try to erase partition 1 in u-boot and add the .rpd file in u-boot use space.
From Linux space, I have tried requesting the Factory image to be loaded once the board is in this erroneous stage and that operation succeeded without any problems. It is the writing of the new image to a partition that can cause this issue.
thank you for your support!