summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2023-04-05 10:40:05 -0400
committerTom Rini <[email protected]>2023-04-05 10:40:05 -0400
commit25eeda170c5e533ca0e3837c8b2d7404cdd749d1 (patch)
tree3ed815ab6105a6655fe25c91dace40c47336f8c6 /doc
parent698c2bd364ce4122a0d0db82b5a8d842186b2fa4 (diff)
parentf4449397551a82f0c1d9714d648f1efb90d56962 (diff)
Merge branch '2023-04-04-android-image-v3-v4-support'
To quote the author: * This is based on Roman Stratiienko's work to support boot image header version 3 and 4. * This supports the new boot image headers v3, v4 and bootconfig feature. https://source.android.com/docs/core/architecture/bootloader/boot-image-header https://source.android.com/docs/core/architecture/bootloader/implementing-bootconfig - Tested on Amlogic Khadas vim3l, a reference board for Android Open Source Project https://www.khadas.com/vim3l And on AM625 Texas Instruments board with 5.10 linux kernel Main changes : - New partition : vendor boot, with a specific vendor ramdisk - DTB is stored in the vendor boot partition - The generic ramdisk is placed after the vendor ramdisk - Bootconfig feature support Here is a link to see the related android boot flow changes on KHADAS vim3l as an example: https://gitlab.baylibre.com/baylibre/amlogic/atv/u-boot/-/commits/souajih/BootImagev4/
Diffstat (limited to 'doc')
-rw-r--r--doc/android/boot-image.rst13
1 files changed, 12 insertions, 1 deletions
diff --git a/doc/android/boot-image.rst b/doc/android/boot-image.rst
index 71db02521b0..c719b4d711d 100644
--- a/doc/android/boot-image.rst
+++ b/doc/android/boot-image.rst
@@ -27,11 +27,21 @@ next image headers:
* v2: used in devices launched with Android 10; adds ``dtb`` field, which
references payload containing DTB blobs (either concatenated one after the
other, or in Android DTBO image format)
+* v3: used in devices launched with Android 11; adds ``vendor_boot`` partition
+ and removes the second-stage bootloader and recovery image support. The new
+ ``vendor_boot`` partition holds the device tree blob (DTB) and a vendor ramdisk.
+ The generic ramdisk in ``boot`` partition is loaded immediately following
+ the vendor ramdisk.
+* v4: used in devices launched with Android 12; provides a boot signature in boot
+ image header, supports multiple vendor ramdisk fragments in ``vendor_boot``
+ partition. This version also adds a bootconfig section at the end of the vendor
+ boot image, this section contains boot configuration parameters known at build time
+ (see [9]_ for details).
v2, v1 and v0 formats are backward compatible.
The Android Boot Image format is represented by
-:c:type:`struct andr_img_hdr <andr_img_hdr>` in U-Boot, and can be seen in
+:c:type:`struct andr_image_data <andr_image_data>` in U-Boot, and can be seen in
``include/android_image.h``. U-Boot supports booting Android Boot Image and also
has associated command
@@ -153,3 +163,4 @@ References
.. [6] :doc:`avb2`
.. [7] https://source.android.com/devices/bootloader
.. [8] https://connect.linaro.org/resources/san19/san19-217/
+.. [9] https://source.android.com/docs/core/architecture/bootloader/implementing-bootconfig