HABV4 event failed but pass

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

HABV4 event failed but pass

Jump to solution
925 Views
jane-jiajuan_zh
Contributor III

Hi NXP,

Some of my chipsets have a very abnormal logs.

Let me clarify the situation first,  I use IMX6SOLO, and NAND+DDR.  Kernel version is 4.14, uboot is 2018.03.

Using MFGTools to download software to our board. After fuse SRK and close the device, the board could work.

fuse prog 3 0 XXXX

fuse prog 3 1 XXXX

....

fuse prog 0 6 2

My problem is when I use MFGTools to download the software again,  after the firmware/u-boot runs and verify the kernel, it has some abnormal log below,  you can see there are HAB Event 1, but the kernel could be loaded and run. That means hab_rvt_authenticate_image() success, but get_hab_status() has failture, could you help check it? 

imx_hab_authenticate_image, 0x12000000, 0x600020, 0x5fe000

Authenticate image from DDR location 0x12000000...

Secure boot enabled

HAB Configuration: 0xcc, HAB State: 0x99

--------- HAB Event 1 -----------------
event data:
0xdb 0x00 0x08 0x41 0x33 0x22 0x0a 0x00

STS = HAB_FAILURE (0x33)
RSN = HAB_INV_ADDRESS (0x22)
CTX = HAB_CTX_AUTHENTICATE (0x0A)
ENG = HAB_ENG_ANY (0x00)

## Booting kernel from Legacy Image at 12000000 ...
Image Name: Linux-4.14.78
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 6282600 Bytes = 6 MiB
Load Address: 10008000
Entry Point: 10008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 12c00000 ...
Image Name: fsl-image-mfgtool-initramfs-imx6
Image Type: ARM Linux RAMDisk Image (uncompressed)
Data Size: 10572297 Bytes = 10.1 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 18000000
Booting using the fdt blob at 0x18000000
Loading Kernel Image ... OK
Using Device Tree in place at 18000000, end 1800f13b

Starting kernel ...

BR,

Jane

0 Kudos
1 Solution
823 Views
Yuri
NXP Employee
NXP Employee

Hello,

 

   Please look at my comments below.

1.  

  Use Appendix F (i.MX manufacturing tool) of app note “Secure Boot on i.MX 50, i.MX 53, i.MX 6 and i.MX 7

Series using HABv4”, Rev. 2, 05/2018 how signed image should be built for working with the MFG.

 

https://www.nxp.com/docs/en/application-note/AN4581.pdf

 

2.
   When verifying the signed image with mfgtool, BOOT_MODE[1:0] should be set to 01 to Serial
Downloader mode, otherwise, you may meet HAB event.

 

Have a great day,

Yuri.

 

-------------------------------------------------------------------------------

Note:

- If this post answers your question, please click the "Mark Correct" button. Thank you!

- We are following threads for 7 weeks after the last post, later replies are ignored

 

Please open a new thread and refer to the closed one, if you have a related question at a later point in time.

View solution in original post

4 Replies
824 Views
Yuri
NXP Employee
NXP Employee

Hello,

 

   Please look at my comments below.

1.  

  Use Appendix F (i.MX manufacturing tool) of app note “Secure Boot on i.MX 50, i.MX 53, i.MX 6 and i.MX 7

Series using HABv4”, Rev. 2, 05/2018 how signed image should be built for working with the MFG.

 

https://www.nxp.com/docs/en/application-note/AN4581.pdf

 

2.
   When verifying the signed image with mfgtool, BOOT_MODE[1:0] should be set to 01 to Serial
Downloader mode, otherwise, you may meet HAB event.

 

Have a great day,

Yuri.

 

-------------------------------------------------------------------------------

Note:

- If this post answers your question, please click the "Mark Correct" button. Thank you!

- We are following threads for 7 weeks after the last post, later replies are ignored

 

Please open a new thread and refer to the closed one, if you have a related question at a later point in time.

823 Views
jane-jiajuan_zh
Contributor III

Hi Yuri,

here sync a forward analysis by myself to you.

From your reply, I suspect that the BOOT_MODE is the key point, so I check our hardware design.

The BOOT_MODE[1:0] is fixed to 10, which means Internal Boot mode.

When we want to enter Serial Downloader mode, we pull down the BT_CFG1_7, which change the NAND BOOT to others, but our device only has NAND, so enter the Serial Downloader mode by this wrong boot config.

I have two questions,

1.  is there any different process in ROM code between the two ways to enter serial downloader mode? 

2.  this problem only happend on some individual chips, is the firmware different? 

BR,

Jane

0 Kudos
823 Views
Yuri
NXP Employee
NXP Employee

Hello,

 I've sent some comments directly.

Regards,

Yuri.

0 Kudos
823 Views
jane-jiajuan_zh
Contributor III

Hi Yuri,

thank you for your replying, 

From my point, my device is closed,  it cannot boot up when meet HAB event.

but you can check the log,  even there is a HAB event when load the kernel, the kernel still boot up. 

Is that right process?

BR,

Jane

0 Kudos