I am trying to use the Recovery Mode to update my u-boot image.
And you initially did set your module into recovery mode by what means?
Once the recovery is done I can’t type anything at the command prompt.
How exactly are you connecting to that command prompt? You will need a serial terminal e.g. like minicom or screen to connect to the resp. ttyUSB instance as explained e.g. here.
It won’t accept any inputs. Hence I can’t issue the “run setupdate” and “run update” commands.
I am connecting to the Colibri evaluation board V3.2B via USB on X27 connector. The JP17/JP19/JP20/JP21 jumpers point to FTDI. I issue the ./update.sh -d /dev/ttyUSB0 command and get this output.
Above command would only ever be needed if the module does indeed no longer at least boot the U-Boot boot loader and is bricked. Otherwise, just stopping in U-Boot would be enough.
I know my connections are good, because if I let the device boot with the existing images I can get access to the RootFS.
Meaning by the same serial terminal connection? What exact configuration thereof are you using?
I can even modify the u-boot environment variables from Linux.
Then, you could also modify bootcmd
to e.g. initiate an update:
fw_setenv bootcmd 'run setupdate; run update'
However, care needs to be taken that it does not go into a boot update loop e.g. one would need editing resp. U-Boot update script aka flash_blk.img
(resp. flash_blk.scr and regenerate the img files using mk-u-boot-scripts.sh) to reset the bootcmd after a successful update instead of just resetting.
My main intention is to flash a new u-boot image and if there’s any other alternate method I’d be glad to hear that too.
Just to update U-Boot one could do run setupdate; run update_uboot
e.g. from within Linux as follows:
fw_setenv bootcmd 'run setupdate; run update_uboot; env default -a; saveenv'