From ec2b696c449f81d4928ef6cece77a0ceea0cdef8 Mon Sep 17 00:00:00 2001 From: Marek Szyprowski Date: Thu, 11 Apr 2024 13:54:01 +0200 Subject: [PATCH] tizen: sd_fusing.py: Switch VF2 board to A/B partition scheme Use A/B partition scheme also for VisionFive2 board. Boot script for VF2 has been updated to discover partitions based on their GPT name, so it is safe to change layout. While touching this, lets remove useless 'none' partition, which was there only to force partitions to have specific numbers, hardcoded earlier in the boot scripts. Also reduce the size of the 'boot' partition, as there is nothing so large to store on it. Signed-off-by: Marek Szyprowski Change-Id: If5893114a217dc98766da0afcc925f05b31c0c14 --- scripts/tizen/sd_fusing.py | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/scripts/tizen/sd_fusing.py b/scripts/tizen/sd_fusing.py index 0500804029..38c3019e00 100755 --- a/scripts/tizen/sd_fusing.py +++ b/scripts/tizen/sd_fusing.py @@ -452,7 +452,7 @@ class RV64(InitParams, SdFusingTarget): self.apply_partition_sizes(args.partition_sizes) super().__init__(device, 'gpt') -class VF2(InitParams, SdFusingTarget): +class VF2(InitParams, SdFusingTargetAB): long_name = "VisionFive2" part_table = [ {"size": 2, "fstype": "raw", "name": "SPL", "start": 4, @@ -461,10 +461,9 @@ class VF2(InitParams, SdFusingTarget): {"size": 4, "fstype": "raw", "name": "u-boot", "ptype": "5B193300-FC78-40CD-8002-E86C45580B47", "binaries": ["u-boot.img", "u-boot.itb"],}, - {"size": 292, "fstype": "vfat", "name": "boot_a", + {"size": 128, "fstype": "vfat", "name": "boot_a", "ptype": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B", "binaries": "boot.img"}, - {"size": 36, "fstype": "raw", "name": "none"}, {"size": 3072, "fstype": "ext4", "name": "rootfs_a", "binaries": "rootfs.img"}, {"size": 1344, "fstype": "ext4", "name": "system-data", @@ -480,16 +479,35 @@ class VF2(InitParams, SdFusingTarget): {"size": 8, "fstype": "ext4", "name": "inform"}, {"size": 256, "fstype": "ext4", "name": "hal_a", "binaries": "hal.img"}, + {"size": 128, "fstype": "vfat", "name": "boot_b", + "ptype": "C12A7328-F81F-11D2-BA4B-00A0C93EC93B", + "binaries_b": "boot.img"}, + {"size": 3072, "fstype": "ext4", "name": "rootfs_b", + "binaries_b": "rootfs.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": 256, "fstype": "ext4", "name": "hal_b", + "binaries_b": "hal.img"}, {"size": 4, "fstype": "raw", "name": "reserved0"}, {"size": 64, "fstype": "raw", "name": "reserved1"}, {"size": 125, "fstype": "raw", "name": "reserved2"}, ] params = (('reboot-param.bin', 'norm'), - ('reboot-param.info', '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')) def __init__(self, device, args): - self.user_partition = 6 + self.user_partition = 5 self.reserved_space = 5 + self.update = args.update self.apply_partition_sizes(args.partition_sizes) super().__init__(device, 'gpt') -- 2.34.1