From 25c9ca18205816cfcd9ce2f1eca459207859e64b Mon Sep 17 00:00:00 2001
From: Andrei Gherzan <andrei.gherzan@huawei.com>
Date: Tue, 13 Jul 2021 12:31:20 +0100
Subject: [PATCH] x-wic.inc: Default ROOTA and ROOTB to squashfs

The change also maintains support for ext4 so that in the future we
can expose a development mode where rootfs is ro but on ext4.

Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
---
 meta-ohos-core/conf/distro/include/x-wic.inc | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/meta-ohos-core/conf/distro/include/x-wic.inc b/meta-ohos-core/conf/distro/include/x-wic.inc
index 96294d1b..244127ac 100644
--- a/meta-ohos-core/conf/distro/include/x-wic.inc
+++ b/meta-ohos-core/conf/distro/include/x-wic.inc
@@ -16,6 +16,9 @@ DEVICEDATA_PARTITION_SIZE ?= "8M"
 SYSDATA_PARTITION_SIZE ?= "512M"
 APPDATA_PARTITION_SIZE ?= "1G"
 
+# Default root filesystem type is squashfs.
+ROOT_FSTYPE ?= "squashfs"
+
 #
 # Use this to include extra wic configuration per partition
 #
@@ -25,8 +28,12 @@ WIC_DEVICEDATA_PARTITION_EXTRA_ARGS ??= ""
 WIC_SYSDATA_PARTITION_EXTRA_ARGS ??= ""
 WIC_APPDATA_PARTITION_EXTRA_ARGS ??= ""
 
-WIC_ROOTA_PARTITION      ?= "part / --source rootfs --use-uuid --fstype=ext4 --label x-sys-a    --mkfs-extraopts '-T default' --align 4096 --fixed-size ${ROOTA_PARTITION_SIZE}      ${WIC_ROOTA_PARTITION_EXTRA_ARGS}"
-WIC_ROOTB_PARTITION      ?= "part                              --fstype=ext4 --label x-sys-b    --mkfs-extraopts '-T default' --align 4096 --fixed-size ${ROOTB_PARTITION_SIZE}      ${WIC_ROOTB_PARTITION_EXTRA_ARGS}"
+WIC_ROOTA_PARTITION ?= "part / --source rootfs --use-uuid --fstype=${ROOT_FSTYPE} \
+                        ${@bb.utils.contains('ROOT_FSTYPE', 'ext4', '--mkfs-extraopts \'-T default\'', '', d)} \
+                        --align 4096 --fixed-size ${ROOTA_PARTITION_SIZE} \
+			${WIC_ROOTA_PARTITION_EXTRA_ARGS}"
+WIC_ROOTB_PARTITION ?= "part --align 4096 --fixed-size ${ROOTB_PARTITION_SIZE} \
+                        ${WIC_ROOTB_PARTITION_EXTRA_ARGS}"
 WIC_DEVICEDATA_PARTITION ?= "part                              --fstype=ext4 --label x-dev-data --mkfs-extraopts '-T default' --align 4096 --fixed-size ${DEVICEDATA_PARTITION_SIZE} ${WIC_DEVICEDATA_PARTITION_EXTRA_ARGS}"
 WIC_SYSDATA_PARTITION    ?= "part                              --fstype=ext4 --label x-sys-data --mkfs-extraopts '-T default' --align 4096 --fixed-size ${SYSDATA_PARTITION_SIZE}    ${WIC_SYSDATA_PARTITION_EXTRA_ARGS}"
 WIC_APPDATA_PARTITION    ?= "part                              --fstype=ext4 --label x-app-data --mkfs-extraopts '-T default' --align 4096 --fixed-size ${APPDATA_PARTITION_SIZE}    ${WIC_APPDATA_PARTITION_EXTRA_ARGS}"
-- 
GitLab