I need to update u-boot on my verdin am62 module to improve boot time. I have patched u-boot and completed a Yocto build that produces new u-boot binaries. I have a few questions about how to proceed.
In your documentation, you use these commands to update from within u-boot
> tftpboot ${loadaddr} tiboot3-am62x-gp-verdin.bin
> run update_tiboot3
> tftpboot ${loadaddr} tispl.bin
> run update_tispl
> tftpboot ${loadaddr} u-boot.img
> run update_uboot
However, in an image.json
file I downloaded from a Tezi image for the AM62, I also see the tiboot3-am62x-hs-fs-verdin.bin
file installed. What’s the difference between those files? Is the gp
version the correct one to use here?
After I complete a manual update, I would like to automate this process somewhat. To flash my linux images, I already use a dd command like this
dd if=my-image.rootfs.wic of=/dev/mmcblk0 bs=1M
Is it possible to use dd
to flash u-boot as well? I see in the image.json
Tezi file that dd_options
are specified for each raw file, but I’m not sure how to translate those to a dd
command that writes all the files. Should they just be concatenated before writing? This is the section that I’m referencing:
"name": "mmcblk0boot0",
"erase": true,
"content": {
"filesystem_type": "raw",
"rawfiles": [
{
"filename": "tiboot3-am62x-gp-verdin.bin",
"dd_options": "seek=0",
"product_ids": "0069"
},
{
"filename": "tiboot3-am62x-gp-verdin.bin",
"dd_options": "seek=0",
"product_ids": "0071"
},
{
"filename": "tiboot3-am62x-gp-verdin.bin",
"dd_options": "seek=0",
"product_ids": "0072"
},
{
"filename": "tiboot3-am62x-hs-fs-verdin.bin",
"dd_options": "seek=0",
"product_ids": "0073"
},
{
"filename": "tiboot3-am62x-hs-fs-verdin.bin",
"dd_options": "seek=0",
"product_ids": "0074"
},
{
"filename": "tiboot3-am62x-hs-fs-verdin.bin",
"dd_options": "seek=0",
"product_ids": "0075"
},
{
"filename": "tiboot3-am62x-hs-fs-verdin.bin",
"dd_options": "seek=0",
"product_ids": "0076"
},
{
"filename": "tispl.bin",
"dd_options": "seek=1024"
},
{
"filename": "u-boot.img",
"dd_options": "seek=5120"
}
]
}
}
I’m a little nervous about just trying things here since I don’t want to brick my board. If I do incorrectly install something, is there any way to recover?