mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-17 02:15:02 +00:00
doc: Add a description for bootmeth_android
Add initial documentation for the Android bootmeth. Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
8c919fcd20
commit
93767c5a8f
4 changed files with 42 additions and 1 deletions
|
@ -945,6 +945,7 @@ S: Maintained
|
|||
T: git https://source.denx.de/u-boot/custodians/u-boot-dfu.git
|
||||
F: boot/bootmeth_android.c
|
||||
F: boot/bootmeth_android.h
|
||||
F: doc/develop/bootstd/android.rst
|
||||
|
||||
BTRFS
|
||||
M: Marek Behún <kabel@kernel.org>
|
||||
|
|
39
doc/develop/bootstd/android.rst
Normal file
39
doc/develop/bootstd/android.rst
Normal file
|
@ -0,0 +1,39 @@
|
|||
.. SPDX-License-Identifier: GPL-2.0+:
|
||||
|
||||
Android Bootmeth
|
||||
================
|
||||
|
||||
Android provides a mechanism for booting its Operating System from eMMC storage,
|
||||
described on `source.android.com <https://source.android.com/docs/core/architecture/bootloader>`_.
|
||||
|
||||
Android has strong requirements about partitioning layout which are described
|
||||
`here <https://source.android.com/docs/core/architecture/partitions>`_.
|
||||
Because multiple partitions are required, this bootmeth only operates on whole mmc
|
||||
devices which have a valid partition table.
|
||||
|
||||
When invoked on a bootdev, this bootmeth searches for the ``misc`` partition in order
|
||||
to read the *boot mode*, which can be one of following:
|
||||
|
||||
Normal
|
||||
Boot the regular Android Operating System.
|
||||
|
||||
Recovery
|
||||
Boot a slimmed down Recovery Operating System. Can be used
|
||||
to factory reset the device or to apply system updates.
|
||||
|
||||
Bootloader
|
||||
Stay in U-Boot and wait for fastboot commands from the host.
|
||||
|
||||
After the *boot mode* has been determined, this bootmeth will read the *slot suffix*
|
||||
from the ``misc`` partition. For details about slots, see
|
||||
`the AOSP documentation <https://source.android.com/docs/core/ota/ab#slots>`_.
|
||||
|
||||
When both the *boot mode* and the *slot suffix* are known, the bootflow is created.
|
||||
|
||||
When the bootflow is booted, the bootmeth reads the kernel, the boot arguments and
|
||||
the vendor ramdisk.
|
||||
It then boots the kernel using bootm. The relevant devicetree blob is extracted
|
||||
from the ``boot`` partition based on the ``adtb_idx`` environment variable.
|
||||
|
||||
The compatible string "u-boot,android" is used for the driver. It is present
|
||||
if `CONFIG_BOOTMETH_ANDROID` is enabled.
|
|
@ -10,6 +10,7 @@ Standard Boot
|
|||
extlinux
|
||||
pxelinux
|
||||
qfw
|
||||
android
|
||||
cros
|
||||
script
|
||||
sandbox
|
||||
|
|
|
@ -429,7 +429,7 @@ Available bootmeth drivers
|
|||
|
||||
Bootmeth drivers are provided for booting from various media:
|
||||
|
||||
- Android bootflow (boot image v4)
|
||||
- :doc:`Android <android>` bootflow (boot image v4)
|
||||
- :doc:`ChromiumOS <cros>` ChromiumOS boot from a disk
|
||||
- EFI boot using bootefi from disk
|
||||
- EFI boot using boot manager
|
||||
|
|
Loading…
Add table
Reference in a new issue