Background below, but I'm failing to update U-Boot: StarFive # sf probe SF: Detected gd25lq128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB StarFive # setenv ipaddr 192.168.1.253;setenv serverip 192.168.1.101 StarFive # tftpboot 192.168.1.101 u-boot-spl.bin.normal.out ethernet@16030000 Waiting for PHY auto negotiation to complete.... done Using ethernet@16030000 device TFTP from server 192.168.1.101; our IP address is 192.168.1.253 Filename 'u-boot-spl.bin.normal.out'.
TFTP error: trying to overwrite reserved memory... That's from instructions in https://github.com/starfive-tech/VisionFive2/ and trying to serve the U-Boot binary from https://github.com/starfive-tech/VisionFive2/releases/tag/JH7110_VF2_515_v5.10.3 mentioned by https://gist.github.com/csgordon/74658096f7838382b40bd64e11f6983e?permalink_comment_id=4819273#gistcomment-4819273 Any ideas on how to get past that "trying to overwrite reserved memory" error? I tried both with and without first loading the dtb, and I'm failing to find a solution searching. I could try asking the vendor but that has never gone well for me. That gist has extremely interesting comments, eg https://gist.github.com/csgordon/74658096f7838382b40bd64e11f6983e?permalink_comment_id=4819273#gistcomment-4819273 which suggests that U-Boot does support nvme/nvme booting on this device, if you update it. I seem to need to update mine: StarFive # load nvme 0:1 ${fdt_addr_r} jh7110-starfive-visionfive-2-v1.3b.dtb Couldn't find partition nvme 0:1 Can't set block device StarFive # mmc list sdio0@16010000: 0 sdio1@16020000: 1 (SD) There's no 'nvme list' command but only guessing that it might exist. Mine has an earlier date than the release #gistcomment-4819273 mentions. Other notes correcting or answering myself from earlier posts: https://gist.github.com/csgordon/74658096f7838382b40bd64e11f6983e writes: > You can now boot without the sd card, using 0:1 in both commands. The > adventurous could set this as the default boot sequence in u-boot. printenv in U-Boot confirms the startup.nsh file isn't referenced from my VisionFive 2 1.3B's environment and trying to modify it was futile. No mention of the search path mentioned in the riscv install docs either. This worked tho for setting up automatic booting from the SD card, copying and pasting those commands from elsewhere: # just to see and make a note of what values are in there... save your old bootcmd just in case! printenv setenv bootcmd 'load mmc 1:1 ${fdt_addr_r} jh7110-starfive-visionfive-2-v1.3b.dtb;load mmc 1:1 ${kernel_addr_r} efi/boot/bootriscv64.efi;bootefi ${kernel_addr_r} ${fdt_addr_r}' saveenv Someone else did something similar, I noticed after the fact. Good to see see OpenFirmware influence in U-Boot. Still failing to figure out where to buy "eMMC" storage that fits this thing. The interface, of two plastic bars with contacts on them in item 22 in the second pic on https://doc-en.rvspace.org/VisionFive2/Quick_Start_Guide/VisionFive2_QSG/board_apperance.html doesn't match anything I can find, so working on the NVMe angle. Thanks, -scott

