https://www.nxp.com/docs/en/user-guide/ANDROID_USERS_GUIDE.pdf
build a full update package follow this document in section 7.1.2,
$ cd ${MY_ANDROID}
$ source build/envsetup.sh
$ lunch evk_8mn-userdebug
$ ./imx-make.sh bootloader kernel -j4
$ make otapackage -j4
After building is complete, you can find the OTA packages in the following path:
${MY_ANDROID}/out/target/product/evk_8mn/evk_8mn-ota-**.zip
update system from board's storage,perform the following steps:
1.Unzip full-ota.zip to get payload.bin , payload_properties.txt and care_map.pb
2.push ayload.bin to board's storage:
adb push payload.bin /data/ota_package.
3.cat the content of payload_properties.txt as follows
FILE_HASH=PbH9mCcnhR39bon05m6p6ZMch3mPStRk+PRRYt69CU4=
FILE_SIZE=524052260
METADATA_HASH=S5kvN7pOZMlGyPpUVK5SfJZqLaJuVtTHrTc5vSKuWkE=
METADATA_SIZE=54299
4. input the following command on the board's console to update
adb root
adb enable-verity
update_engine_client \
--payload=file:///data/ota_package/payload.bin \
--update \
--headers="FILE_HASH=PbH9mCcnhR39bon05m6p6ZMch3mPStRk+PRRYt69CU4=
FILE_SIZE=524052260
METADATA_HASH=S5kvN7pOZMlGyPpUVK5SfJZqLaJuVtTHrTc5vSKuWkE=
METADATA_SIZE=54299"
After updated,I can see "Update successfully applied, waiting to reboot" in the logcat.
but unable to boot up.
When I failed for the first time, I noticed a message
//[ 12.182571] update_verifier: Booting slot 1: isSlotMarkedSuccessful=0
//[ 12.190008] update_verifier: /data/ota_package/care_map.pb doesn't exist'
//[ 12.196797] update_verifier: Failed to parse the care map file, skipping verification
//[ 12.206187] update_verifier: Deferred marking slot 1 as booted successfully.
//[ 12.213313] update_verifier: Leaving update_verifier.
So when I push the payload.bin, I will also put the care_map to the board ,
adb push payload.bin /data/ota_package.
adb push care_map.pb /data/ota_package.
I found some differences between the upgraded log files and the logs of normal startup, but I don't know how to handle them.
I hope to receive everyone's help. Thank you very much
[ 4.728174] init: Open EEPROM/sys/bus/i2c/devices/i2c-3/3-0050/eepromerror!: No such file or directory
[ 4.737924] init: ExportKernelBootProps: read ro.boot.serialno : No such file or directory
update_verifier: Booting slot 1: isSlotMarkedSuccessful=0