[OE-core] [PATCH 3/3] image_types: add support for 'fastboot' image type

Nicolas Dechesne nicolas.dechesne at linaro.org
Mon May 22 09:30:03 UTC 2017


'fastboot' images are Android sparse images, which can be loaded onto
development boards using the fastboot protocol, available on many development
boards, as well as a very large number of read devices (phones, tablets, ...).

In this implementation, the 'fastboot' image type relies on standard linux
mkfs.ext4 to generate the file system and uses ext2simg from android-tools to
generate the sparse image. android-tools has its own tool to build an ext4
image, but it usually has less features than the standard linux mkfs.ext4
(especially with regards to file attributes).

Signed-off-by: Nicolas Dechesne <nicolas.dechesne at linaro.org>
---
 meta/classes/image_types.bbclass | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index efdcfed843..0b2f11e157 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -197,6 +197,12 @@ IMAGE_CMD_ubi () {
 
 IMAGE_CMD_ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ubifs ${MKUBIFS_ARGS}"
 
+IMAGE_CMD_fastboot () {
+	oe_mkext234fs ext4 tmp ${EXTRA_IMAGECMD}
+	ext2simg -v ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.tmp ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.fastboot
+	rm -f ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.tmp
+}
+
 EXTRA_IMAGECMD = ""
 
 inherit siteinfo
@@ -226,6 +232,7 @@ IMAGE_DEPENDS_ubi = "mtd-utils-native"
 IMAGE_DEPENDS_ubifs = "mtd-utils-native"
 IMAGE_DEPENDS_multiubi = "mtd-utils-native"
 IMAGE_DEPENDS_wic = "parted-native"
+IMAGE_DEPENDS_fastboot = "e2fsprogs-native android-tools-native"
 
 # This variable is available to request which values are suitable for IMAGE_FSTYPES
 IMAGE_TYPES = " \
@@ -234,6 +241,7 @@ IMAGE_TYPES = " \
     ext2 ext2.gz ext2.bz2 ext2.lzma \
     ext3 ext3.gz \
     ext4 ext4.gz \
+    fastboot fastboot.gz \
     btrfs \
     iso \
     hddimg \
-- 
2.11.0




More information about the Openembedded-core mailing list