aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xscripts/sysfw_boardcfg_blob_creator.py34
1 files changed, 20 insertions, 14 deletions
diff --git a/scripts/sysfw_boardcfg_blob_creator.py b/scripts/sysfw_boardcfg_blob_creator.py
index 1f2fdc094..f638a36e1 100755
--- a/scripts/sysfw_boardcfg_blob_creator.py
+++ b/scripts/sysfw_boardcfg_blob_creator.py
@@ -28,7 +28,7 @@ class BoardCfgDesc():
28 self.fh = open(outfile, 'wb') 28 self.fh = open(outfile, 'wb')
29 bytes = self.fh.write(struct.pack('<BB', num_elems, sw_rev)) 29 bytes = self.fh.write(struct.pack('<BB', num_elems, sw_rev))
30 self.offset += bytes 30 self.offset += bytes
31 self.offset += 4 * struct.calcsize(self.fmt) 31 self.offset += num_elems * struct.calcsize(self.fmt)
32 self.tmpdir = tempfile.mkdtemp() 32 self.tmpdir = tempfile.mkdtemp()
33 descfile = os.path.join(self.tmpdir, "desc") 33 descfile = os.path.join(self.tmpdir, "desc")
34 bcfgfile = os.path.join(self.tmpdir, "bcfg") 34 bcfgfile = os.path.join(self.tmpdir, "bcfg")
@@ -66,23 +66,29 @@ class BoardCfgDesc():
66def create_sysfw_blob(args): 66def create_sysfw_blob(args):
67 """Create a SYSFW data blob to be used as a component in combined image """ 67 """Create a SYSFW data blob to be used as a component in combined image """
68 68
69 if args.boardcfg is None or args.boardcfg_sec is None or args.boardcfg_pm is None or args.boardcfg_rm is None:
70 logging.error("**** All 4 boardcfg binaries need to be provided ****")
71 raise Exception("Insufficient arguments")
72
73 logging.info("#### Creating SYSFW data blob - %s ####", args.output_file.name) 69 logging.info("#### Creating SYSFW data blob - %s ####", args.output_file.name)
74 logging.info("#### SW Rev = %d", args.sw_rev) 70 logging.info("#### SW Rev = %d", args.sw_rev)
75 logging.info("#### Device Group = %d", args.devgrp) 71 logging.info("#### Device Group = %d", args.devgrp)
76 logging.info("#### Board config binary - %s", args.boardcfg.name)
77 logging.info("#### Board config security binary - %s", args.boardcfg_sec.name)
78 logging.info("#### Board config PM binary - %s", args.boardcfg_pm.name)
79 logging.info("#### Board config RM binary - %s", args.boardcfg_rm.name)
80 72
81 blob = BoardCfgDesc(args.output_file.name, args.devgrp, args.sw_rev) 73 cnt = 0
82 blob.add_boardcfg(BOARDCFG, args.boardcfg.name) 74 if args.boardcfg is not None: cnt = cnt + 1
83 blob.add_boardcfg(BOARDCFG_SEC, args.boardcfg_sec.name) 75 if args.boardcfg_sec is not None: cnt = cnt + 1
84 blob.add_boardcfg(BOARDCFG_PM, args.boardcfg_pm.name) 76 if args.boardcfg_pm is not None: cnt = cnt + 1
85 blob.add_boardcfg(BOARDCFG_RM, args.boardcfg_rm.name) 77 if args.boardcfg_rm is not None: cnt = cnt + 1
78
79 blob = BoardCfgDesc(args.output_file.name, args.devgrp, args.sw_rev, cnt)
80 if args.boardcfg is not None:
81 logging.info("#### Board config binary - %s", args.boardcfg.name)
82 blob.add_boardcfg(BOARDCFG, args.boardcfg.name)
83 if args.boardcfg_sec is not None:
84 logging.info("#### Board config security binary - %s", args.boardcfg_sec.name)
85 blob.add_boardcfg(BOARDCFG_SEC, args.boardcfg_sec.name)
86 if args.boardcfg_pm is not None:
87 logging.info("#### Board config PM binary - %s", args.boardcfg_pm.name)
88 blob.add_boardcfg(BOARDCFG_PM, args.boardcfg_pm.name)
89 if args.boardcfg_rm is not None:
90 logging.info("#### Board config RM binary - %s", args.boardcfg_rm.name)
91 blob.add_boardcfg(BOARDCFG_RM, args.boardcfg_rm.name)
86 92
87 blob.finalize() 93 blob.finalize()
88 94