How do I update the bootloader for the evk_8mm when using A/B update in the Android 9 Pie update_engine?
I installed the Android P9.0.0_2.3.0 demo image on the evk_8mm, then built an OTA package that included updates to the u-boot and linux kernel device trees, published my payload.bin on my OTA server and then applied it using the command line "update_engine_client". On reboot, my linux kernel modifications were observed, but my u-boot modifications were not.
If I apply the same build to the evk_8mm using uuu, my u-boot modifications are observed.
What am I missing?
As per my understanding u-boot won't be a part of OTA process. As it is the boot-loader which is dealing with changing the boot partitions after the OTA, if we change the boot-loader and it gets corrupted then there won't be any way to recover back. You can also verify the same in the android source for i.MX8M Mini at "./build/make/tools/releasetools/ota_from_target_files.py". Here, you can see there is an option kept with the name "--full_bootloader", however there is nothing implemented for this option.
So, your u-boot changes are not seen after an OTA. I would recommend not to do an OTA of boot-loader, as failure in this won't be able to recover back to working boot-loader.
Feel free to let us know if you have any further queries in this.
Regards,
Kunal