From a032063d16e6af137ab4e150ec376c1cd84ca3f8 Mon Sep 17 00:00:00 2001 From: Marek Szyprowski Date: Wed, 10 Apr 2024 13:37:27 +0200 Subject: [PATCH] tizen: sd_fusing.py: add LicheePi4A with Super partition support Signed-off-by: Marek Szyprowski Change-Id: If13b5df03c396c59ade8ba36529d67dc285dd745 --- sd_fusing.py | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/sd_fusing.py b/sd_fusing.py index a7fedd9..0500804 100755 --- a/sd_fusing.py +++ b/sd_fusing.py @@ -553,6 +553,62 @@ class LicheePi4A(InitParams, SdFusingTargetAB): self.apply_partition_sizes(args.partition_sizes) super().__init__(device, 'gpt') +class LicheePi4ASuper(InitParams, SdFusingTargetAB): + long_name = "LicheePi4A w/ super partition" + part_table = [ + {"size": None, "fstype": "raw", "name": "spl+uboot", + "start_sector": 34, "size_sectors": 4062, + "ptype": "8DA63339-0007-60C0-C436-083AC8230908", + "binaries": ["u-boot-with-spl.bin"],}, + {"size": 128, "fstype": "vfat", "name": "boot_a", + "ptype": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B", + "binaries": "boot.img"}, + {"size": 6656, "fstype": "ext4", "name": "super", + "binaries": "super.img"}, + {"size": 1344, "fstype": "ext4", "name": "system-data", + "binaries": "system-data.img"}, + {"size": None, "fstype": "ext4", "name": "user", + "binaries": "user.img"}, + {"size": 32, "fstype": "ext4", "name": "module_a", + "binaries": "modules.img"}, + {"size": 32, "fstype": "ext4", "name": "ramdisk_a", + "binaries": "ramdisk.img"}, + {"size": 32, "fstype": "ext4", "name": "ramdisk-recovery_a", + "binaries": "ramdisk-recovery.img"}, + {"size": 8, "fstype": "ext4", "name": "inform"}, + {"size": 128, "fstype": "vfat", "name": "boot_b", + "ptype": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B", + "binaries_b": "boot.img"}, + {"size": 32, "fstype": "ext4", "name": "module_b", + "binaries_b": "modules.img"}, + {"size": 32, "fstype": "ext4", "name": "ramdisk_b", + "binaries_b": "ramdisk.img"}, + {"size": 32, "fstype": "ext4", "name": "ramdisk-recovery_b", + "binaries_b": "ramdisk-recovery.img"}, + {"size": 4, "fstype": "ext4", "name": "reserved0"}, + {"size": 64, "fstype": "ext4", "name": "reserved1"}, + {"size": 125, "fstype": "ext4", "name": "reserved2"} + ] + params = (('reboot-param.bin', 'norm'), + ('reboot-param.info', 'norm'), + ('partition-ab.info', 'a'), + ('partition-ab-cloned.info', '1'), + ('upgrade-status.info', '0'), + ('partition-a-status.info', 'ok'), + ('partition-b-status.info', 'ok')) + + # bootcode written to the protective MBR, aka RV64 'J 0x4400' (sector 34) + bootcode = b'\x6f\x40\x00\x40' + + def __init__(self, device, args): + self.reserved_space = 8 + self.user_partition = 4 + self.update = args.update + super().__init__(device, 'gpt') + self.with_super = True + self.super_alignment = 1048576 + + class X86emu(SdFusingTarget): part_table = [ {"size": 512, "fstype": "vfat", "name": "EFI", "start": 4, @@ -597,6 +653,7 @@ TARGETS = { 'vf2': VF2, 'rv64': RV64, 'lpi4a': LicheePi4A, + 'lpi4as': LicheePi4ASuper, 'x86emu32': X86emu32, 'x86emu64': X86emu64, } -- 2.34.1