diff options
| -rw-r--r-- | meta/classes/image_types.bbclass | 20 |
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 | ||
| 209 | IMAGE_CMD_ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ubifs ${MKUBIFS_ARGS}" | 209 | IMAGE_CMD_ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ubifs ${MKUBIFS_ARGS}" |
| 210 | 210 | ||
| 211 | MIN_F2FS_SIZE ?= "524288" | ||
| 212 | IMAGE_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 | |||
| 211 | EXTRA_IMAGECMD = "" | 228 | EXTRA_IMAGECMD = "" |
| 212 | 229 | ||
| 213 | inherit siteinfo kernel-arch | 230 | inherit siteinfo kernel-arch |
| @@ -220,6 +237,7 @@ EXTRA_IMAGECMD_ext2 ?= "-i 4096" | |||
| 220 | EXTRA_IMAGECMD_ext3 ?= "-i 4096" | 237 | EXTRA_IMAGECMD_ext3 ?= "-i 4096" |
| 221 | EXTRA_IMAGECMD_ext4 ?= "-i 4096" | 238 | EXTRA_IMAGECMD_ext4 ?= "-i 4096" |
| 222 | EXTRA_IMAGECMD_btrfs ?= "-n 4096" | 239 | EXTRA_IMAGECMD_btrfs ?= "-n 4096" |
| 240 | EXTRA_IMAGECMD_f2fs ?= "" | ||
| 223 | 241 | ||
| 224 | do_image_jffs2[depends] += "mtd-utils-native:do_populate_sysroot" | 242 | do_image_jffs2[depends] += "mtd-utils-native:do_populate_sysroot" |
| 225 | do_image_cramfs[depends] += "util-linux-native:do_populate_sysroot" | 243 | do_image_cramfs[depends] += "util-linux-native:do_populate_sysroot" |
| @@ -234,6 +252,7 @@ do_image_squashfs_lz4[depends] += "squashfs-tools-native:do_populate_sysroot" | |||
| 234 | do_image_ubi[depends] += "mtd-utils-native:do_populate_sysroot" | 252 | do_image_ubi[depends] += "mtd-utils-native:do_populate_sysroot" |
| 235 | do_image_ubifs[depends] += "mtd-utils-native:do_populate_sysroot" | 253 | do_image_ubifs[depends] += "mtd-utils-native:do_populate_sysroot" |
| 236 | do_image_multiubi[depends] += "mtd-utils-native:do_populate_sysroot" | 254 | do_image_multiubi[depends] += "mtd-utils-native:do_populate_sysroot" |
| 255 | do_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 |
| 239 | IMAGE_TYPES = " \ | 258 | IMAGE_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 |
