read partition length from recovery.fstab
Don't hardcode magical partition behavior in the script generator. Change-Id: I4aeea022f8a32a7c9f316be2c2514510344ca0e0
This commit is contained in:
@@ -156,11 +156,27 @@ def LoadRecoveryFSTab(zip):
|
|||||||
p.mount_point = pieces[0]
|
p.mount_point = pieces[0]
|
||||||
p.fs_type = pieces[1]
|
p.fs_type = pieces[1]
|
||||||
p.device = pieces[2]
|
p.device = pieces[2]
|
||||||
if len(pieces) == 4:
|
p.length = 0
|
||||||
p.device2 = pieces[3]
|
options = None
|
||||||
|
if len(pieces) >= 4:
|
||||||
|
if pieces[3].startswith("/"):
|
||||||
|
p.device2 = pieces[3]
|
||||||
|
if len(pieces) >= 5:
|
||||||
|
options = pieces[4]
|
||||||
|
else:
|
||||||
|
p.device2 = None
|
||||||
|
options = pieces[3]
|
||||||
else:
|
else:
|
||||||
p.device2 = None
|
p.device2 = None
|
||||||
|
|
||||||
|
if options:
|
||||||
|
options = options.split(",")
|
||||||
|
for i in options:
|
||||||
|
if i.startswith("length="):
|
||||||
|
p.length = int(i[7:])
|
||||||
|
else:
|
||||||
|
print "%s: unknown option \"%s\"" % (p.mount_point, i)
|
||||||
|
|
||||||
d[p.mount_point] = p
|
d[p.mount_point] = p
|
||||||
return d
|
return d
|
||||||
|
|
||||||
|
@@ -172,11 +172,9 @@ class EdifyGenerator(object):
|
|||||||
fstab = self.info.get("fstab", None)
|
fstab = self.info.get("fstab", None)
|
||||||
if fstab:
|
if fstab:
|
||||||
p = fstab[partition]
|
p = fstab[partition]
|
||||||
# Reserve the last 16 Kbytes of an EMMC /data for the crypto footer
|
|
||||||
if partition == "/data" and common.PARTITION_TYPES[p.fs_type] == "EMMC":
|
|
||||||
reserve_size = -16384
|
|
||||||
self.script.append('format("%s", "%s", "%s", "%s");' %
|
self.script.append('format("%s", "%s", "%s", "%s");' %
|
||||||
(p.fs_type, common.PARTITION_TYPES[p.fs_type], p.device, reserve_size))
|
(p.fs_type, common.PARTITION_TYPES[p.fs_type],
|
||||||
|
p.device, p.length))
|
||||||
else:
|
else:
|
||||||
# older target-files without per-partition types
|
# older target-files without per-partition types
|
||||||
partition = self.info.get("partition_path", "") + partition
|
partition = self.info.get("partition_path", "") + partition
|
||||||
|
Reference in New Issue
Block a user