The Image Header contains metadata that identifies the boot image, including the type, size, and location. This information is crucial for the bootloader to correctly interpret and load the image. The header includes security-related information such as encryption keys and authentication data. This ensures that only verified and trusted images are loaded.
User can define multiple files to form an Image. Every image contains image header associated with it. User can define dependent systems under a single image. Bootgen creates required partitions for each file and create a common image header for that image. An image header points to the partitions (partition headers) that are associated with this image.
| Offset | Name | Description |
|---|---|---|
| 0x0 | First Partition Header | Word offset to first partition header |
| 0x4 | No of Partitions | Number of partitions present for this image |
| 0x8 | Meta header revocation ID | Revocation ID for meta header. If there are multiple IHs, then the same Revocation ID are placed into each IH. |
| 0xC | Image Attributes | See Image Attributes table. |
| 0x10-0x1C | Image Name | ASCII name of the image. Maximum 16 characters. |
| 0x20 | Image ID / Node ID | ID of the image or node. |
| 0x24 | Unique ID (UID) | Defines affinity and compatibility identifier when required for a particular device resource (for example, DFs binding to DP). For resources where the UID is not used, for example, power and subsystem resources, this field is ignored. |
| 0x28 | Parent UID | Defines required parent resource UID for the image’s configuration content, if required. For example, DFs compatible DP UID. |
| 0x2C | Function ID | Identifier used to capture unique function of the image configuration data (for example, multiple DFs which all have compatibility to a given DP). |
| 0x30 | DDR memory low address | DDR memory address where image is copied when
CopyToMem is enabled. |
| 0x34 | DDR memory high address | |
| 0x38 – 0x39 | PCR Number | PCR number to which the measurement are applied, valid numbers are 2 to 7. For any other value, Bootgen throws an error. |
| 0x3A – 0x3B | Measurement Index |
Measurement index order to extend the measurement. The maximum number of indexes per PCR is fixed and is configured through a CDO command. Software throws an error if the measurement index is not within the limits. |
| 0x3C | Checksum | A sum of all the previous words. |