fatls で確認
zynq-uboot> fatls mmc 0:1 40687 hello_world
fatload で使ってなさそうなアドレスへロード
zynq-uboot> fatload mmc 0:1 0x3000000 hello_world reading hello_world 40687 bytes read in 21 ms (1.8 MiB/s)
bootelf で実行
zynq-uboot> bootelf 0x3000000 ## Starting application at 0x0c100000 ... Example expects ABI version 6 Actual U-Boot ABI version 6 Hello World argc = 1 argv[0] = "0x3000000" argv[1] = "<NULL>" Hit any key to exit ... ## Application terminated, rc = 0x0
理由はわからないが go コマンドだと暴走する。簡単に u-boot を追ってみると r9 が壊れていた。どうも、r9 に何かを入れる前提があるようだ。おそらく elf の load で解決される何か。