aboutsummaryrefslogtreecommitdiff
path: root/releasetools.py
diff options
context:
space:
mode:
authorEthan Chen <intervigil@gmail.com>2016-05-24 18:44:57 -0700
committerZhao Wei Liew <zhaoweiliew@gmail.com>2016-05-29 18:36:38 +0800
commita2119cee4941b0cd5d8300483274c679038c813b (patch)
tree281a820ce452ec61e27a460047e3bef090affa46 /releasetools.py
parent4920076b6beefc1de0339cf14491d9225cd56e3d (diff)
msm8916: Commonize msm8939 and msm8916
Change-Id: Iddc1a5e7793fe8110cba1f2314b53e3bb164c34d
Diffstat (limited to 'releasetools.py')
-rwxr-xr-xreleasetools.py18
1 files changed, 16 insertions, 2 deletions
diff --git a/releasetools.py b/releasetools.py
index cc73d5f..31bf958 100755
--- a/releasetools.py
+++ b/releasetools.py
@@ -48,11 +48,11 @@ def GetRadioFiles(z):
return out
def FullOTA_Assertions(info):
- #TODO: Implement device specific asserstions.
+ AddTrustZoneAssertion(info)
return
def IncrementalOTA_Assertions(info):
- #TODO: Implement device specific asserstions.
+ AddTrustZoneAssertion(info)
return
def InstallRawImage(image_data, api_version, input_zip, fn, info, filesmap):
@@ -107,3 +107,17 @@ def FullOTA_InstallEnd(info):
def IncrementalOTA_InstallEnd(info):
InstallRadioFiles(info)
+
+def AddTrustZoneAssertion(info):
+ # Presence of filesmap indicates packaged firmware
+ filesmap = LoadFilesMap(info.input_zip)
+ if filesmap != {}:
+ return
+ android_info = info.input_zip.read("OTA/android-info.txt")
+ m = re.search(r'require\s+version-trustzone\s*=\s*(\S+)', android_info)
+ if m:
+ versions = m.group(1).split('|')
+ if len(versions) and '*' not in versions:
+ cmd = 'assert(cm.verify_trustzone(' + ','.join(['"%s"' % tz for tz in versions]) + ') == "1");'
+ info.script.AppendExtra(cmd)
+ return