On Sun, 2022-02-06 at 10:03 +0100, Stefan Roese wrote: > On 2/5/22 01:54, Pali Rohár wrote: > > On Saturday 05 February 2022 01:40:23 Marcel Ziswiler wrote: > > > On Sat, 2022-02-05 at 01:25 +0100, Pali Rohár wrote: > > > > On Saturday 05 February 2022 01:01:28 Marcel Ziswiler wrote: > > > > > Addendum. > > > > > > > > > > On Sat, 2022-02-05 at 00:43 +0100, Marcel Ziswiler wrote: > > > > > > > > > > > > > > > > [snip] > > > > > > > > > > > > Kosta, do you see any problems with removing this script? As you > > > > > > > might > > > > > > > have seen, Pali and Marek did some great work on kwboot in the > > > > > > > mean > > > > > > > time. Is there anything left in mrvl_uart.sh that kwboot can't > > > > > > > handle? > > > > > > > > > > > > Disclaimer: I am not really a Kirkwood developer or at least not > > > > > > yet (;-p). > > > > > > > > > > > > Recently, we started playing with mainline U-Boot/Linux kernel as > > > > > > part of an effort to port OpenWrt > > > > > > to > > > > > > the > > > > > > MikroTik RB5009UG [1]. It features an Armada 7040 which is a 64-bit > > > > > > Arm SoC while kwboot mentions > > > > > > 32-bit > > > > > > platforms only. Anyway, so far I was able to boot it using the good > > > > > > oldé mrvl_uart.sh script as > > > > > > follows: > > > > > > > > > > > > ⬢[zim@toolbox ~]$ ~/u-boot/tools/mrvl_uart.sh /dev/ttyUSB3 > > > > > > ~/arm-trusted- > > > > > > firmware/build/a70x0_rb5009/release/flash-image.bin > > > > > > Using device connected on serial port "/dev/ttyUSB3" > > > > > > Loading flash image file > > > > > > "/var/home/zim/arm-trusted-firmware/build/a70x0_rb5009/release/flash- > > > > > > image.bin" > > > > > > Recovery will run at 115200 baud > > > > > > ======================================== > > > > > > Press the "Reset" button on the target board and the "Enter" key on > > > > > > the host keyboard > > > > > > simultaneously > > > > > > Sending > > > > > > /var/home/zim/Sources/arm-trusted-firmware.git/build/a70x0_rb5009/release/flash-image.bin, > > > > > > 11377 > > > > > > blocks: Give your local XMODEM receive command now. > > > > > > Bytes Sent:1456384 BPS:7871 > > > > > > > > > > > > Transfer complete > > > > > > > > > > > > Trying this with kwboot instead I was not successful as of yet. Not > > > > > > sure whether I am just missing > > > > > > something > > > > > > or > > > > > > support for booting 64-bit platforms would yet need to be added. > > > > > > > > > > If I patch it as follows it actually starts transferring but does not > > > > > really get too far. > > > > > > > > 64-bit Armada SoCs use different image format than 32-bit Armada SoCs. > > > > This format is not supported by U-Boot as U-Boot does not even build > > > > images for this format. You even cannot boot U-Boot directly on those > > > > 64-bit Armada SoCs. It is TF-A what is booted and it is TF-A project > > > > which generate images compatible for those SoCs. > > > > > > Yes, we do know that. > > > > > > > So U-Boot does not have any support for those 64-bit images. > > > > > > Yes, U-Boot proper basically has to be combined with TF-A using some > > > external tooling. > > > > > > > So you should use TF-A tools which generates these 64-bit Armada > > > > bootable images. > > > > > > Exactly. > > > > > > > > > > Probably you could use kwboot just for sending boot pattern and then > > > > generic "sx" tool (which is used also by that shell script). And after > > > > that kwboot again for terminal support. But this does not verify that > > > > image is correct and also may have issues if header part contains > > > > executable code which prints something to UART... > > > > > > > > $ kwboot -b /dev/ttyUSB0 > > > > > > Hm, at least kwboot from today's master does not allow -b without also > > > giving it an image. > > > > This commit is part of master branch and added support for it: > > https://source.denx.de/u-boot/u-boot/-/commit/c513fe47dca24de87a904ce7d71cfd8a390e1154 > > > > If it does not work then there is some bug which should be fixed. I have > > tested it and it works on my setup. > > > > Can you check if you have that commit to ensure that we are not going to > > test / debug older version? > > > > > > $ sx flash-image.bin 0<>/dev/ttyUSB0 1>&0 > > > > $ kwboot -t /dev/ttyUSB0 > > > > > > Remember, it is not that we do not have a solution or do not know how > > > this all works. It is rather that we currently use that mrvl_uart.sh > > > script which this patch is about to remove and Stefan enquired about. > > > > I see... > > > > But I do not know what is the best option for now. If issue with -b is > > investigated / fixed then that script can be replaced by two (or three) > > commands. And I think it is better than maintaining two different tools > > in U-Boot which do same thing. On the other hand kwboot does not support > > 64-bit Armada format, which mrvl_uart.sh can handle (but only because it > > does not do any verification nor does not understand image format), so > > for this purpose it is better. But because U-Boot does not support > > 64-bit Armada image format, I do not know if this script should be in > > U-Boot because whole image building is outside of U-Boot responsibility > > and... probably this tool should be part of TF-A project instead. So at > > the end, should be this tool maintained in U-Boot project at all if > > U-Boot itself does not support nor provide tooling for 64-bit Armada > > images? > > > > Any opinion? > > Frankly, as long as mrvl_uart.sh has features that kwboot does not > support, I'm reluctant to completely remove it.
Once "standalone" usage is fixed and properly documented I do recall my objection and am completely fine with removing tools/mrvl_uart.sh. Thanks! > Thanks, > Stefan