AnsweredAssumed Answered

[IMX6Q HAB issue]: Download signed images into a “close” device by using mfgtool.

Question asked by Ashley Sheng on Dec 31, 2015
Latest reply on Nov 5, 2018 by tommy duan

Hi,

 

I'm working on HAB on a customer board. The operating system on the board is android 5.0. When I started to test the HAB function, I read several user guides & posts such as

AN4581.pdf Secure Boot on i.MX50, i.MX53, and i.MX 6 Series using HABv4 

iMX 6 Linux High Assurance Boot (HAB) User's Guide

https://community.freescale.com/docs/DOC-96451

https://community.freescale.com/docs/DOC-94864

and so on. But, no one of the above documents mentions about how to singed the Android images for HAB function. Eventually, I got “i.MXAndroidHDCP2.xUserGuide” and then I followed the step 4 in the menu to singed the android images, and then I used “fastboot” command to burn the u-boot, boot, recovery and system these android images into our device (eMMC). I was able to run HAB function successfully without any problem, so I turned the device to “close” mode.

 

Now, I have to use mfgtool to burn the android images into the devices (eMMC). I followed the step in the same menu but I wasn't able to burn the images into our device by using mfgtool. The mfgtool showed “Jumping to OS image” and then stopped. From the mfgtool log, it seems like there are some problems to initialize the memory.

 

My steps to set up mfgtool for download HAB images are

1. I used the code base Yocto 3.10.53_1.1.0 ga release to build uboot and zimage with the patch “0001-yocto-u-boot-enable-mx6-hab-on-3.140.53.patch.txt.zip” for mfgtool.

2. I checked my u-boot.imx by command “od -x -N 64 u-boot.imx” and I got the result as

 

0000000 00d1 4020 0000 1780 0000 0000 f42c 177f

0000020 f420 177f f400 177f a000 1785 0000 0000

0000040 f000 177f d000 0005 0000 0000 03d2 4000

0000060 02cc 04fc 0e02 9807 0c00 0000 0e02 5807

0000100

  IVT address:  IVT.self = 0x177ff400.

  Image length: IVT.csf – IVT.self = 0x1785a000 - 0x177ff400 = 0x5AC00

 

3.  I referred the step 12. Sign Yocto 3.10.53 u-boot for mfgtools firmware in https://community.freescale.com/docs/DOC-96451 to sign the u-boot.

4.  I replaced 4 files located in mfgtools\progiles\linux\OS Firmware\firmware\ which are

     u-boo.imx with siged u-boo.imx,

     zImage,

     fsl-image-mfgtool-initramfs-imx6qdlsolo.cpio.gz.u-boot

     zImage-imx6q-sabresa-ldo.dtb.

   (These files were built by yocto 3.10.53_1.1.0)

 

But the mfgtool still shows “Jumping to OS image” and then stopped. I don't know if any steps I did the wrong?



Original Attachment has been moved to: sign_mfg_command.sh

Original Attachment has been moved to: csf_u-boot_yocto_mfg_3.10.53.txt.zip

Original Attachment has been moved to: i.MXAndroidHDCP2.xUserGuide.html.zip

Original Attachment has been moved to: MfgTool.log.zip

Original Attachment has been moved to: 0001-yocto-u-boot-enable-mx6-hab-on-3.10.53.patch.txt.zip

Original Attachment has been moved to: ucl2.xml.zip

Original Attachment has been moved to: mod_4_mfgtool_yocto.sh

Outcomes