You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Android_boot_image_editor/README.expert.md

93 lines
4.8 KiB
Markdown

# layout of boot.img
### 1. header part
item size in bytes
+----------------------------------------------------------+
|<MAGIC HEADER> | 8 |
|--------------------------------+-------------------------|
|<kernel length> | 4 |
|--------------------------------+-------------------------|
|<kernel offset> | 4 |
|--------------------------------+-------------------------|
|<ramdisk length> | 4 |
|--------------------------------+-------------------------|
|<ramdisk offset> | 4 |
|--------------------------------+-------------------------|
|<second bootloader length> | 4 |
|--------------------------------+-------------------------|
|<second bootloader offset> | 4 |
|--------------------------------+-------------------------|
|<tags offset> | 4 |
|--------------------------------+-------------------------|
|<page size> | 4 |
|--------------------------------+-------------------------|
|<header version> | 4 |
|--------------------------------+-------------------------|
|<os version& os patch level> | 4 |
|--------------------------------+-------------------------|
|<board name> | 16 |
|--------------------------------+-------------------------|
|<cmdline part 1> | 512 |
|--------------------------------+-------------------------|
|<hash digest> | 32 |
|--------------------------------+-------------------------|
|<cmdline part 2> | 1024 |
|--------------------------------+-------------------------|
|<dtbo length> | 4 |
|--------------------------------+-------------------------|
|<dtbo offset> | 8 |
|--------------------------------+-------------------------|
|<header size> | 4 |
|--------------------------------+-------------------------|
|<padding> | min(n * page_zie - 1648)|
+----------------------------------------------------------+
### 2. data part
+----------------------------------------------------------+
|<kernel> | kernel length |
|--------------------------------+-------------------------|
|<padding> | min(n * page_zie - len)|
+----------------------------------------------------------+
+--------------------------------+-------------------------+
|<ramdisk> | ramdisk length |
|--------------------------------+-------------------------|
|<padding> | min(n * page_zie - len)|
+----------------------------------------------------------+
+--------------------------------+-------------------------+
|<second bootloader> | second bootloader length|
|--------------------------------+-------------------------|
|<padding> | min(n * page_zie - len)|
+----------------------------------------------------------+
+--------------------------------+-------------------------+
|<recovery dtbo> | recovery dtbo length |
|--------------------------------+-------------------------|
|<padding> | min(n * page_zie - len)|
+----------------------------------------------------------+
### 3. signature part
#### 3.1 Boot Image Signature (VBoot 1.0)
+--------------------------------+-------------------------+
|<signature> | signature length |
|--------------------------------+-------------------------|
|<padding> | defined by boot_signer |
+----------------------------------------------------------+
#### 3.2 AVB Footer (VBoot 2.0)
+--------------------------------+-------------------------+
|<signature> | signature length |
|--------------------------------+-------------------------|
| ... | ... |
|<padding> | defined by avbtool, |
|<padding> | it will pad to requested|
|<padding> | image size |
| ... | ... |
+----------------------------------------------------------+