AnsweredAssumed Answered

About Imx28 HAB IVT

Question asked by bruce chen on Jun 20, 2016
Latest reply on Jun 21, 2016 by bruce chen

According AN555 pdf description


The Image Vector Table (IVT) is a mandatory part of the boot image, and its structure is defined as:

typedef struct


uint32_t header;

uint32_t *entry;

uint32_t reserved1;

uint32_t *dcd;

boot_data_t *boot_data;

uint32_t *self;

uint32_t *csf;

uint32_t reserved2;

} hab_ivt_t;


uint32_t: A type representing a 32 bit unsigned integer.

Header: Header identifying the type of data structure (0xD1), its size (0x0020), and HAB

version (0x40). For i.MX28, this is D100 2040h.

*entry: Absolute address of the first instruction to execute from the image.

reserved1: Reserved and should be zero.

*dcd: Absolute address of the image Device Configuration Table (DCD). If using

bootlets to configure i.MX28, this field should be set to NULL.

*boot_data: Absolute address of the Boot Data structure. This should be set to NULL for


*self: Absolute address of the IVT. Used internally by the ROM.

*csf: Absolute address of the Command Sequence File (CSF) used by the HAB library.

This field must be set to NULL when not performing a secure boot.

reserved2: Reserved and should be zero.



"The IVT is a block of data that must reside on the boot device."   this line what's meaning?  The IVT how to reside on the boot device?