From: Alex Deymo <deymo@google.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 0/6] Android A/B Bootloader support
Date: Sun, 2 Apr 2017 01:49:46 -0700 [thread overview]
Message-ID: <20170402084952.5102-1-deymo@google.com> (raw)
In-Reply-To: <a74b3d5e65b4bf5c2edca98bba9e678be762ebe7>
An "Android Bootloader" has a lot of requirements about how it should
behave which Android partners must implement. In particular, the new
A/B updates [1] added more requirements and flows to the bootloader
which are not common, on top of the existing flows.
For example, a few uncommon requirements include:
* Lookup in the BCB (boot control block) whether a "recovery" message
is stored. This is used by the recovery environment when applying a
multi-stage update in the legacy update model (recovery reboots to
recovery again) and for interrumpted factory-reset (a reboot during
the factory reset should continue to reboot into factory reset until
it is done).
* A new "repair" mode. In the A/B model, when none of the slots is
bootable, the device would boot into repair mode, which is often the
same as "bootloader" mode (fastboot).
* Recovery as root: In newer version of AOSP, it is possible to mount
the system image as / without an initramfs, which then frees up the
initramfs in the "boot" partition to hold the "recovery" initramfs.
This is the default for new devices and required for the A/B setup.
This patchset updates the Android-related headers and introduces new
commands to boot a recent Android build. This work is based on the
bootloader used in the Raspberry Pi in Android Things and extensively
tested there.
[1] https://source.android.com/devices/tech/ota/ab_updates.html
Alex Deymo (6):
image: Update include/android_image.h
image: Implement a function to load Android Images.
cmd: Add 'load_android' command to load Android images.
disk: Return the partition number in part_get_info_by_name()
Initial support for the Android Bootloader flow
cmd: Add "boot_android" command.
README | 25 ++-
cmd/Kconfig | 19 ++
cmd/Makefile | 2 +
cmd/boot_android.c | 126 +++++++++++++
cmd/load_android.c | 56 ++++++
common/Kconfig | 19 ++
common/Makefile | 1 +
common/android_bootloader.c | 350 +++++++++++++++++++++++++++++++++++
common/fb_mmc.c | 6 +-
common/image-android.c | 60 ++++++
disk/part.c | 2 +-
include/android_bootloader.h | 48 +++++
include/android_bootloader_message.h | 174 +++++++++++++++++
include/android_image.h | 24 ++-
include/image.h | 19 ++
include/part.h | 3 +-
16 files changed, 920 insertions(+), 14 deletions(-)
create mode 100644 cmd/boot_android.c
create mode 100644 cmd/load_android.c
create mode 100644 common/android_bootloader.c
create mode 100644 include/android_bootloader.h
create mode 100644 include/android_bootloader_message.h
--
2.12.2.564.g063fe858b8-goog
next parent reply other threads:[~2017-04-02 8:49 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <a74b3d5e65b4bf5c2edca98bba9e678be762ebe7>
2017-04-02 8:49 ` Alex Deymo [this message]
2017-04-02 8:49 ` [U-Boot] [PATCH 1/6] image: Update include/android_image.h Alex Deymo
2017-04-02 8:49 ` [U-Boot] [PATCH 2/6] image: Implement a function to load Android Images Alex Deymo
2017-04-02 8:49 ` [U-Boot] [PATCH 3/6] cmd: Add 'load_android' command to load Android images Alex Deymo
2017-04-02 8:49 ` [U-Boot] [PATCH 4/6] disk: Return the partition number in part_get_info_by_name() Alex Deymo
2017-04-02 8:49 ` [U-Boot] [PATCH 5/6] Initial support for the Android Bootloader flow Alex Deymo
2017-04-02 8:49 ` [U-Boot] [PATCH 6/6] cmd: Add "boot_android" command Alex Deymo
2017-04-04 14:46 ` Lukasz Majewski
2017-04-09 19:27 ` [U-Boot] [PATCH 5/6] Initial support for the Android Bootloader flow Simon Glass
2017-04-06 22:42 ` [U-Boot] [PATCH 4/6] disk: Return the partition number in part_get_info_by_name() Simon Glass
2017-05-12 17:18 ` [U-Boot] [U-Boot, " Tom Rini
2017-04-06 22:42 ` [U-Boot] [PATCH 3/6] cmd: Add 'load_android' command to load Android images Simon Glass
2017-04-06 22:42 ` [U-Boot] [PATCH 2/6] image: Implement a function to load Android Images Simon Glass
2017-04-06 22:42 ` [U-Boot] [PATCH 1/6] image: Update include/android_image.h Simon Glass
2017-05-12 17:18 ` [U-Boot] [U-Boot,1/6] " Tom Rini
2017-04-19 8:42 ` [U-Boot] [PATCH 0/6] Android A/B Bootloader support Kever Yang
2018-04-13 0:57 Stanislas BERTRAND
2018-04-16 12:45 ` Alex Deymo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170402084952.5102-1-deymo@google.com \
--to=deymo@google.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.