About Image Headers
The Image Header is an array of structures containing information related to each image, such as an ELF file, bitstream, data files, and so forth. Each image can have multiple partitions, for example an ELF can have multiple loadable sections, each of which form a partition in the boot image. The table will also contain the information of number of partitions related to an image. The following table provides the address offsets, parameters, and descriptions for the Zynq® UltraScale+™ MPSoC.
Address Offset | Parameter | Description |
---|---|---|
0x00 | Next image header offset | Link to next Image Header. 0 if last Image Header. (word offset) |
0x04 | Corresponding partition header | Link to first associated Partition Header. (word offset) |
0x08 | Reserved | Always 0. |
0x0C | Partition Count | Value of the actual partition count. |
0x10 - N | Image Name | Packed in big endian order. To reconstruct the string, unpack 4 bytes
at a time, reverse the order, and concatenated. For example, the
string “FSBL10.ELF ” is packed as
0x10: ‘L’,’B’,’S’,’F’, 0x14:
’E’,’.’,’0’,’1’, 0x18: ’\0’,’\0’,’F’,’L’ The packed
image name is a multiple of 4 bytes. |
varies | String Terminator |
0x00000
|
varies | Padding | Defaults to 0xFFFFFFF to 64 bytes boundary. |