summaryrefslogtreecommitdiff
authorXindong Xu <xindong.xu@amlogic.com>2018-10-26 13:13:23 (GMT)
committer Xindong Xu <xindong.xu@amlogic.com>2018-10-26 22:42:09 (GMT)
commitcdac4003ecce529b19ac7b27fe2073b0ee6a3622 (patch)
tree7533c8f8a9b595953ee5da8005f4bd97cf9b632d
parent42534e7df6e221f5068f55f7c2d6d368fdb74661 (diff)
downloadcommon-p-amlogic.zip
common-p-amlogic.tar.gz
common-p-amlogic.tar.bz2
ota: ota: update bootloader first when partition tab change [2/2]
bug: 118460700 Problem: when partiton tab changed, avb check error when reboot to recovery again Solution: update bootloader first when partition tab change Verify: atom Change-Id: I142ceea297b0c2722a8229d4c2153560d60ca974
Diffstat
-rwxr-xr-xreleasetools.py18
1 files changed, 12 insertions, 6 deletions
diff --git a/releasetools.py b/releasetools.py
index 3e52136..17582fe 100755
--- a/releasetools.py
+++ b/releasetools.py
@@ -177,6 +177,14 @@ def BuildCustomerIncrementalImage(info, *par, **dictarg):
def FullOTA_Assertions(info):
print "amlogic extensions:FullOTA_Assertions"
+ try:
+ bootloader_img = info.input_zip.read("RADIO/bootloader.img")
+ except KeyError:
+ OPTIONS.ota_partition_change = False
+ print "no bootloader.img in target_files; skipping install"
+ else:
+ OPTIONS.ota_partition_change = True
+ common.ZipWriteStr(info.output_zip, "bootloader.img", bootloader_img)
if OPTIONS.ota_zip_check:
info.script.AppendExtra('if ota_zip_check() == "1" then')
info.script.AppendExtra('set_bootloader_env("upgrade_step", "3");')
@@ -184,6 +192,9 @@ def FullOTA_Assertions(info):
info.script.AppendExtra('write_dtb_image(package_extract_file("dt.img"));')
info.script.AppendExtra('backup_data_cache(recovery, /cache/recovery/);')
info.script.WriteRawImage("/recovery", "recovery.img")
+ if OPTIONS.ota_partition_change:
+ info.script.AppendExtra('ui_print("update bootloader.img...");')
+ info.script.AppendExtra('write_bootloader_image(package_extract_file("bootloader.img"));')
info.script.AppendExtra('reboot_recovery();')
info.script.AppendExtra('else')
@@ -231,12 +242,7 @@ package_extract_file("recovery.img", "/dev/block/recovery");
ui_print("update vbmeta.img...");
package_extract_file("vbmeta.img", "/dev/block/vbmeta");""")
- try:
- bootloader_img = info.input_zip.read("RADIO/bootloader.img")
- except KeyError:
- print "no bootloader.img in target_files; skipping install"
- else:
- common.ZipWriteStr(info.output_zip, "bootloader.img", bootloader_img)
+ if OPTIONS.ota_partition_change:
info.script.AppendExtra('ui_print("update bootloader.img...");')
info.script.AppendExtra('write_bootloader_image(package_extract_file("bootloader.img"));')