summaryrefslogtreecommitdiffstats
path: root/meta/classes/image_types.bbclass
diff options
context:
space:
mode:
authorKory Maincent <kory.maincent@bootlin.com>2022-05-20 10:35:28 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-05-21 08:37:30 +0100
commitd14c6c45fc918a58a66129e00b681f8e3a4123e3 (patch)
tree4ee2a28f2556587245b0f32da8197dc0812faff8 /meta/classes/image_types.bbclass
parentbbbe9f0377cbf082d8386c416b950fbaf961f3a9 (diff)
downloadpoky-d14c6c45fc918a58a66129e00b681f8e3a4123e3.tar.gz
images_types: isolate the write of UBI configuration
Isolate the writing of the UBI configuration in a separate function. This allows to use a custom configuration easily by overriding the function. Replace the echo functions by a cat to have a more readable configuration. (From OE-Core rev: 601294b35c83faa134e26844c65db59b42d5052f) Signed-off-by: Kory Maincent <kory.maincent@bootlin.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/image_types.bbclass')
-rw-r--r--meta/classes/image_types.bbclass31
1 files changed, 19 insertions, 12 deletions
diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index 89a9c92db7..0ffea91195 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -142,6 +142,24 @@ UBI_VOLNAME ?= "${MACHINE}-rootfs"
142UBI_VOLTYPE ?= "dynamic" 142UBI_VOLTYPE ?= "dynamic"
143UBI_IMGTYPE ?= "ubifs" 143UBI_IMGTYPE ?= "ubifs"
144 144
145write_ubi_config() {
146 if [ -z "$1" ]; then
147 local vname=""
148 else
149 local vname="_$1"
150 fi
151
152 cat <<EOF > ubinize${vname}-${IMAGE_NAME}.cfg
153[ubifs]
154mode=ubi
155image=${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.${UBI_IMGTYPE}
156vol_id=0
157vol_type=${UBI_VOLTYPE}
158vol_name=${UBI_VOLNAME}
159vol_flags=autoresize
160EOF
161}
162
145multiubi_mkfs() { 163multiubi_mkfs() {
146 local mkubifs_args="$1" 164 local mkubifs_args="$1"
147 local ubinize_args="$2" 165 local ubinize_args="$2"
@@ -151,19 +169,8 @@ multiubi_mkfs() {
151 bbfatal "MKUBIFS_ARGS and UBINIZE_ARGS have to be set, see http://www.linux-mtd.infradead.org/faq/ubifs.html for details" 169 bbfatal "MKUBIFS_ARGS and UBINIZE_ARGS have to be set, see http://www.linux-mtd.infradead.org/faq/ubifs.html for details"
152 fi 170 fi
153 171
154 if [ -z "$3" ]; then 172 write_ubi_config "$3"
155 local vname=""
156 else
157 local vname="_$3"
158 fi
159 173
160 echo \[ubifs\] > ubinize${vname}-${IMAGE_NAME}.cfg
161 echo mode=ubi >> ubinize${vname}-${IMAGE_NAME}.cfg
162 echo image=${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.${UBI_IMGTYPE} >> ubinize${vname}-${IMAGE_NAME}.cfg
163 echo vol_id=0 >> ubinize${vname}-${IMAGE_NAME}.cfg
164 echo vol_type=${UBI_VOLTYPE} >> ubinize${vname}-${IMAGE_NAME}.cfg
165 echo vol_name=${UBI_VOLNAME} >> ubinize${vname}-${IMAGE_NAME}.cfg
166 echo vol_flags=autoresize >> ubinize${vname}-${IMAGE_NAME}.cfg
167 if [ -n "$vname" ]; then 174 if [ -n "$vname" ]; then
168 mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.ubifs ${mkubifs_args} 175 mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.ubifs ${mkubifs_args}
169 fi 176 fi