From 53b9463398eb7276fbf1a0295b9c71f61181e022 Mon Sep 17 00:00:00 2001 From: Marek Szyprowski Date: Tue, 2 Apr 2024 09:42:08 +0200 Subject: [PATCH] tizen: sd_fusing.py: add support for writing bootcode to sector zero Some boards require special binary bootcode in sector zero (MBR or protective MBR) to boot properly. Add support for such case. Signed-off-by: Marek Szyprowski Change-Id: I8cc0594328ccd6e5445d1b47804e374b0b3550a8 --- scripts/tizen/sd_fusing.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/scripts/tizen/sd_fusing.py b/scripts/tizen/sd_fusing.py index ceecb0c..c71d6de 100755 --- a/scripts/tizen/sd_fusing.py +++ b/scripts/tizen/sd_fusing.py @@ -128,6 +128,8 @@ class SdFusingTarget: self.part_table[self.user_partition]["size"] = self.user_size self.label = Label(self.part_table, ltype) + if not hasattr(self, 'bootcode'): + self.bootcode = None self.binaries = self._get_binaries('binaries') def apply_partition_sizes(self, partition_sizes): @@ -610,6 +612,12 @@ def mkpart(args, target): logging.error(f"New partition table:\n" + str(target.label)) sys.exit(1) + if target.bootcode: + logging.debug("Writing bootcode\n") + with open(Device, "wb") as f: + f.write(target.bootcode) + f.close + for i, part in enumerate(target.part_table): d = "/dev/" + get_partition_device(target.device, i+1) if not 'fstype' in part: -- 2.7.4