Hello,
I'm implementing HAB on an i.MX8M based board. I've built u-boot with CONFIG_IMX_HAB, created an u-boot/dtb/atf image using 'imx-mkimage', appended a CSF binary compiled from CSF files using code signing tools 3.3.1, utilizing the HAB blocks data from `imx-mkimage` output, generated a PKI tree using the code signing tool scripts, burned the eFuses using the SRK table.
=> hab_status
Secure boot disabled
HAB Configuration: 0xf0, HAB State: 0x66
--------- HAB Event 1 -----------------
event data:
0xdb 0x00 0x14 0x45 0x33 0x0c 0xa0 0x00
0x00 0x00 0x00 0x00 0x40 0x1f 0xdd 0xc0
0x00 0x00 0x00 0x20
STS = HAB_FAILURE (0x33)
RSN = HAB_INV_ASSERTION (0x0C)
CTX = HAB_CTX_ASSERT (0xA0)
ENG = HAB_ENG_ANY (0x00)
--------- HAB Event 2 -----------------
event data:
0xdb 0x00 0x14 0x45 0x33 0x0c 0xa0 0x00
0x00 0x00 0x00 0x00 0x40 0x1f 0xcd 0xc0
0x00 0x00 0x00 0x04
STS = HAB_FAILURE (0x33)
RSN = HAB_INV_ASSERTION (0x0C)
CTX = HAB_CTX_ASSERT (0xA0)
ENG = HAB_ENG_ANY (0x00)
--------- HAB Event 3 -----------------
event data:
0xdb 0x00 0x3c 0x45 0x33 0x18 0xc0 0x00
0xca 0x00 0x34 0x00 0x02 0xc5 0x1d 0x00
0x00 0x00 0x16 0x5c 0x40 0x1f 0xcd 0xc0
0x00 0x00 0x10 0x20 0x40 0x20 0x00 0x00
0x00 0x0d 0x3d 0xd0 0x40 0x2d 0x3d 0xd0
0x00 0x00 0xaf 0x60 0x00 0x97 0x00 0x00
0x00 0x00 0xa1 0x50 0x56 0x00 0x00 0x00
0x00 0x07 0x8f 0xa0
STS = HAB_FAILURE (0x33)
RSN = HAB_INV_SIGNATURE (0x18)
CTX = HAB_CTX_COMMAND (0xC0)
ENG = HAB_ENG_ANY (0x00)
--------- HAB Event 4 -----------------
event data:
0xdb 0x00 0x3c 0x45 0x33 0x18 0xc0 0x00
0xca 0x00 0x34 0x00 0x02 0xc5 0x1d 0x00
0x00 0x00 0x16 0x5c 0x40 0x1f 0xcd 0xc0
0x00 0x00 0x10 0x20 0x40 0x20 0x00 0x00
0x00 0x0d 0x3d 0xd0 0x40 0x2d 0x3d 0xd0
0x00 0x00 0xaf 0x60 0x00 0x97 0x00 0x00
0x00 0x00 0xa1 0x50 0x56 0x00 0x00 0x00
0x00 0x07 0x8f 0xa0
STS = HAB_FAILURE (0x33)
RSN = HAB_INV_SIGNATURE (0x18)
CTX = HAB_CTX_COMMAND (0xC0)
ENG = HAB_ENG_ANY (0x00)
These are the events that I'm getting on the board. First two point at the main image IVT and first byte of boot data, saying they're not signed, third one says that the four blocks of code (specified in the CSF binary) have an invalid signature.
I consulted the HABv4 API reference manual and HAB CST User's Guide, but they don't really point at any possible solutions to these problems.
What should I do to fix these?