AnsweredAssumed Answered

i.MX6UL hab_status

Question asked by Robert Lubas on May 23, 2016
Latest reply on Jun 30, 2016 by Robert Lubas

Hello everyone, I am trying to secure boot in i.MX6UL G2 - for not only signed second stage bootloader (SPL). Here is the problem:
While executing hab_status in u-boot command prompt I am getting the following log:

 

MX6UL_VAR_DART(mmc)==> hab_status

 

 

Secure boot disabled

prefetch abort

pc : [<69722070>]   lr : [<9ff712ed>]

reloc pc : [<50fb2070>]   lr : [<878012ed>]

sp : 9ef6fcc0  ip : 9ffa37b8 fp : 00000001

r10: 9ffa4d98  r9 : 9ef6feb8 r8 : 9ef8b928

r7 : 9ff71361  r6 : 00000000 r5 : 6c41202e  r4 : 6972206c

r3 : 9ff85cd1  r2 : 020200b4 r1 : 9ef6fccc  r0 : 9ef6fcc8

Flags: nzCv  IRQs off  FIQs off  Mode SVC_32

Resetting CPU ...

 

 

resetting ...

 

How I build the u-boot: (SPL and u-boot.img)

 

git clone https://github.com/varigit/uboot-imx

git checkout imx_v2015.10_dart_6ul_var1

 

add to include/configs/mx6ul_var_dart.h the following defines:

#define CONFIG_SECURE_BOOT

#define CONFIG_SYS_FSL_SEC_COMPAT       4 /* HAB version */

#define CONFIG_FSL_CAAM

#define CONFIG_CMD_DEKBLOB

#define CONFIG_SYS_FSL_SEC_LE

#define CONFIG_FAT_WRITE

 

make -j8 ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- mrproper

make ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- mx6ul_var_dart_mmc_defconfig

make -j8 ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi-

 

Generate the PKI according with the AN4581

Program the fuses using fuse prog

Device is not closed

Sign using CSF:

 

[Header]

Version = 4.1

Hash Algorithm = sha256

Engine = ANY

Engine Configuration = 0

Certificate Format = X509

Signature Format = CMS

Engine = CAAM

[Install SRK]

File = "../crts/SRK_1_2_3_4_table.bin"

Source index = 0

[Install CSFK]

File = "../crts/CSF1_1_sha256_2048_65537_v3_usr_crt.pem"

[Authenticate CSF]

#[Unlock]

#Engine = CAAM

#Features = RNG

[Install Key]

Verification index = 0

Target Index = 2

File= "../crts/IMG1_1_sha256_2048_65537_v3_usr_crt.pem"

[Authenticate Data]

Verification index = 2

Blocks = 0x877fb000 0x0 0xc00 "./SPL"

 

 

What may cause the prefetch abort ?

Why the hab events did not appear?

 

Thanks,

Robert

 

 

~                                         

 

 

 

Outcomes