AnsweredAssumed Answered

HAB events loading through SDP

Question asked by Eric Nelson on Nov 22, 2016
Latest reply on Nov 20, 2017 by Anuradha Ranasinghe

I'm stuck trying to understand a HAB event on a custom i.MX6Q board when loading over USB (SDP).


I haven't yet closed the device, and am forcing SDP mode by using "bmode usb" from U-Boot v2016.01.


The board boots from SPI-NOR and the signed U-Boot works properly (shows no HAB events) when

booting that way.


The single event generated when loading over USB is this:
HAB Configuration: 0xf0, HAB State: 0x66
--------- HAB Event 1 -----------------
event data:
0xdb 0x00 0x08 0x41 0x33 0x22 0x0a 0x00
ENG = HAB_ENG_ANY (0x00)
The U-Boot binary used to create the signature has the DCD cleared out (I ran and the .csf file I'm using has the proper address for loading the DCD (0x910000 to match my mx6_usb_work.conf):
[Authenticate Data]
Verification index = 2
Blocks = 0x177ff400 0x0 0x0006dc00 "u-boot.imx"


[Authenticate Data]
Verification index = 2
Blocks = 0x00910000 0x0000002c 0x00000340 "u-boot.imx"
The same structure also works on a SABRE Lite using U-Boot v2016.11 using the same keys, though with different addresses and sizes.
I've reviewed the addresses and sizes in use and they appear to be correct. Using more or less than the 0x340 bytes for the DCD data or the 0x6dc00 for the image causes additional HAB failures and I'm not seeing what might be going on.
Can someone provide more background on what conditions generate an error code of HAB_CTX_AUTHENTICATE?