[OE-core] [RFC PATCH 0/2] Add support for fastboot images

Nicolas Dechesne nicolas.dechesne at linaro.org
Wed Aug 26 15:48:27 UTC 2015


Some (many?) embedded SBCs and Android devices (such as Nexus devices) come with
Android bootloaders/BSP by default, and often the fastboot protocol may be even
the only way we can flash the device. So this RFC series is an attempt to be
able to easily use such devices while building OE images. I believe the use case
is common enough so that we can have this feature in OE Core.

First we import the android-tools recipe from meta-smartphone. That provides
make_ext4fs utility that can be used to create sparse images suitable for
fastboot. The original android-tools recipe had support for adb (and adbd) which
has been removed during the import since it's huge, and not strictly needed for
building the images. Alternatively I found a standalone fork for make_ext4fs at
[1], from the OpenWrt project, but it is quite new, and i have not tested it
yet. I would appreciate any feedback on that.

Then we add a new image type called ext4.fastboot that uses make_ext4fs to
create the appropriate images. A specific variable can be used to set the image
size which defaults to 16MB.

These patches have been tested on various devices such as IFC6410, DragonBoard
410c, and a few other Qualcomm based devices.

I understand these patches would break meta-smartphone, but this is an RFC, so
let's discuss how to best handle that.

[1] http://git.openwrt.org/?p=project/make_ext4fs.git;a=summary

Nicolas Dechesne (2):
  android-tools: import android-tools from meta-smartphone into oe-core
  image_types.bbclass: add support for fastboot image type

 meta/classes/image_types.bbclass                   |  16 +++
 .../android-tools/disable-selinux-support.patch    | 137 +++++++++++++++++++++
 .../android-tools/reboot-syscall.patch             |  25 ++++
 .../android-tools/remove-libselinux.patch          |  13 ++
 .../android-tools/android-tools_4.2.2.bb           |  51 ++++++++
 5 files changed, 242 insertions(+)
 create mode 100644 meta/recipes-devtools/android-tools/android-tools/disable-selinux-support.patch
 create mode 100644 meta/recipes-devtools/android-tools/android-tools/reboot-syscall.patch
 create mode 100644 meta/recipes-devtools/android-tools/android-tools/remove-libselinux.patch
 create mode 100644 meta/recipes-devtools/android-tools/android-tools_4.2.2.bb

-- 
2.3.5




More information about the Openembedded-core mailing list