Noticed that the 2013.10 upstream u-boot release will contain support for the Visionfive 2. I’m trying the current RC2 build. This build fails at the very end. Cross-compiling on Debian bookworm. The error report is:
binman: Filename 'fw_dynamic.bin' not found in input path (.,.,./board/starfive/visionfive2,arch/riscv/dts) (cwd='/home/vf2build/u-boot')
make: *** [Makefile:1111: .binman_stamp] Error 1
This is odd: opensbi needs u-boot to build, and u-boot needs opensbi to build. Building opensbi with the partial u-boot build works, and then copying ‘fw_dynamic.bin’ to the u-boot root allows the u-boot build to complete without errors on second try.
Is this supposed to work like this?
Related to this: is the 2023.10 upstream u-boot build interchangeable with the u-boot build in v3.4.5 ?
All tips for correctly building upstream u-boot for VF2 are welcome.
I can reply to my own question. Just tried RC3 which was released today. The error report now is more informative:
Image 'itb' is missing external blobs and is non-functional: opensbi
/binman/itb/fit/images/opensbi/opensbi (fw_dynamic.bin):
See the documentation for your board. The OpenSBI git repo is at
https://github.com/riscv/opensbi.git
You may need to build fw_dynamic.bin first and re-build u-boot with
OPENSBI=/path/to/fw_dynamic.bin
Some images are invalid
make: *** [Makefile:1115: .binman_stamp] Error 103
You need to clone&build opensbi to get that bin… It is needed to make system work correctly. Besides, currently there’s a bug need to fix through this patch series, please apply or boot would fail. Also you could check this series if you want to try to use usb/nvme in u-boot.