summaryrefslogtreecommitdiffstats
path: root/meta/classes/image_types.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/image_types.bbclass')
-rw-r--r--meta/classes/image_types.bbclass20
1 files changed, 20 insertions, 0 deletions
diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index c736f92e58..b17c435274 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -208,6 +208,23 @@ IMAGE_CMD_ubi () {
208 208
209IMAGE_CMD_ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ubifs ${MKUBIFS_ARGS}" 209IMAGE_CMD_ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ubifs ${MKUBIFS_ARGS}"
210 210
211MIN_F2FS_SIZE ?= "524288"
212IMAGE_CMD_f2fs () {
213 # We need to add additional smarts here form devices smaller than 1.5G
214 # Need to scale appropriately between 40M -> 1.5G as the "overprovision
215 # ratio" goes down as the device gets bigger (70% -> 4.5%), below about
216 # 500M the standard IMAGE_OVERHEAD_FACTOR does not work, so add additional
217 # space here when under 500M
218 size=${ROOTFS_SIZE}
219 if [ ${size} -lt ${MIN_F2FS_SIZE} ] ; then
220 size=${MIN_F2FS_SIZE}
221 bbwarn "Rootfs size is too small for F2FS. Filesystem will be extended to ${size}K"
222 fi
223 dd if=/dev/zero of=${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.f2fs seek=${size} count=0 bs=1024
224 mkfs.f2fs ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.f2fs
225 sload.f2fs -f ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.f2fs
226}
227
211EXTRA_IMAGECMD = "" 228EXTRA_IMAGECMD = ""
212 229
213inherit siteinfo kernel-arch 230inherit siteinfo kernel-arch
@@ -220,6 +237,7 @@ EXTRA_IMAGECMD_ext2 ?= "-i 4096"
220EXTRA_IMAGECMD_ext3 ?= "-i 4096" 237EXTRA_IMAGECMD_ext3 ?= "-i 4096"
221EXTRA_IMAGECMD_ext4 ?= "-i 4096" 238EXTRA_IMAGECMD_ext4 ?= "-i 4096"
222EXTRA_IMAGECMD_btrfs ?= "-n 4096" 239EXTRA_IMAGECMD_btrfs ?= "-n 4096"
240EXTRA_IMAGECMD_f2fs ?= ""
223 241
224do_image_jffs2[depends] += "mtd-utils-native:do_populate_sysroot" 242do_image_jffs2[depends] += "mtd-utils-native:do_populate_sysroot"
225do_image_cramfs[depends] += "util-linux-native:do_populate_sysroot" 243do_image_cramfs[depends] += "util-linux-native:do_populate_sysroot"
@@ -234,6 +252,7 @@ do_image_squashfs_lz4[depends] += "squashfs-tools-native:do_populate_sysroot"
234do_image_ubi[depends] += "mtd-utils-native:do_populate_sysroot" 252do_image_ubi[depends] += "mtd-utils-native:do_populate_sysroot"
235do_image_ubifs[depends] += "mtd-utils-native:do_populate_sysroot" 253do_image_ubifs[depends] += "mtd-utils-native:do_populate_sysroot"
236do_image_multiubi[depends] += "mtd-utils-native:do_populate_sysroot" 254do_image_multiubi[depends] += "mtd-utils-native:do_populate_sysroot"
255do_image_f2fs[depends] += "f2fs-tools-native:do_populate_sysroot"
237 256
238# This variable is available to request which values are suitable for IMAGE_FSTYPES 257# This variable is available to request which values are suitable for IMAGE_FSTYPES
239IMAGE_TYPES = " \ 258IMAGE_TYPES = " \
@@ -251,6 +270,7 @@ IMAGE_TYPES = " \
251 cpio cpio.gz cpio.xz cpio.lzma cpio.lz4 \ 270 cpio cpio.gz cpio.xz cpio.lzma cpio.lz4 \
252 wic wic.gz wic.bz2 wic.lzma \ 271 wic wic.gz wic.bz2 wic.lzma \
253 container \ 272 container \
273 f2fs \
254" 274"
255 275
256# Compression is a special case of conversion. The old variable 276# Compression is a special case of conversion. The old variable