How to activate HAB on imx8dxl ?

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

How to activate HAB on imx8dxl ?

Jump to solution
1,486 Views
pigbrian
Contributor II

Dear Guys,

 

I already enabled HAB in imx8mp, but imx8dxl doesn't have enough information about HAB.

1. imx-mkimage doesn't support the print_fit_hab option for imx8dxl.

2. I can't find a way to fuse the register map for imx8dxl online.

 
Could you please explain how to activate HAB?
 
Thank you.
0 Kudos
Reply
1 Solution
1,458 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi @pigbrian 

The i.MX8DXL is with AHAB-enabled devices, and the boot images consist of containers.

That is different from i.MX8MP. The mx8_mx8x_secure_boot.txt and AN12312 can help for you.

About fuse and fusemap, the SRM can be found from https://www.nxp.com/products/iMX8XLite 

Send you guide how to apply for that.

 

Regards

Harvey

 

View solution in original post

15 Replies
1,404 Views
pigbrian
Contributor II

Hi, Harvey

 

I was found a option as below.
setenv force_prog_ecc y

 

When I search websites, IMX8MP using HAB4.

Can IMX8MP use AHAB ?

0 Kudos
Reply
1,376 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi @pigbrian 

The AHAB not applied to i.MX8MP so can't use AHAB.

The AHAB events (IND = AHAB_BAD_SIGNATURE_IND (0xF0)) means that bad signature during the signature generation.

You can use the "FB: ucmd fuse prog -y 0 730 0x311D12F2" in your uuu script.

 

Regards

Harvey

0 Kudos
Reply
1,323 Views
pigbrian
Contributor II

Dear Harvey,
you are right.
The AHAB events (IND = AHAB_BAD_SIGNATURE_IND (0xF0)) means that bad signature during the signature generation.

 

I wrote some incorrect keys.

Can I fix a fused key?

 

0 Kudos
Reply
1,321 Views
pigbrian
Contributor II

Dear Harvey,

 

When I compared keys "od -t x4 ettifos_cits_fuse.bin" with "fuse read 0 730 16", all of keys are same.
Why happened "IND = AHAB_BAD_SIGNATURE_IND (0xF0)" ?

0 Kudos
Reply
1,314 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi 

The IND = AHAB_BAD_SIGNATURE_IND (0xF0) tells Bad signature not the key hash error.

The AN12312 provides help.

Please check again the signature procedure. 

 

Regards

Harvey

0 Kudos
Reply
1,297 Views
pigbrian
Contributor II

Dear harvey,

 

Now, I trying kernel signing.

 

According to sign_os_cntr.txt,

Note: OS image can also be authenticated by running a U-Boot command:

=> auth_cntr <Container address>

 

How to check <Container address> ?

 

I made a singed.Image with guide document and copy to {board}/boot/Image.

but, I met a problem as follow.

 

Bad Linux ARM64 Image magic!
=> ahab_status
Lifecycle: 0x0080, OEM closed

sc_seco_get_event: idx: 0, res:3
No SECO Events Found!

 

What should I check?

 

BR,

 

0 Kudos
Reply
1,295 Views
pigbrian
Contributor II

Dear Harvey.


Now, I trying kernel signing.

 

1. auth_cntr <Container address>
solved.

 

 

=> ext2load mmc 0:2 0x98000000 /boot/Image_signed
28539904 bytes read in 149 ms (182.7 MiB/s)

=> auth_cntr 0x98000000
Authenticate OS container at 0x98000000

=> ext2load mmc 0:2 0x80700000 /boot/imx8dxl-v2x.dtb
54417 bytes read in 5 ms (10.4 MiB/s)

 

created some env parameters

fdtcontroladdr=87a540d0
fileaddr=80280000
filesize=1b28200

 

=> booti 0x80280000 - 0x80700000
Bad Linux ARM64 Image magic!

 

What should I check?

 

BR,

0 Kudos
Reply
1,099 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi,

Please check again the relevant envi configuration in uboot.

and have you loaded them?

pri bsp_bootcmd
bsp_bootcmd=echo Running BSP bootcmd ...; mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if test ${sec_boot} = yes; then if run loadcntr; then run mmcboot; else run netboot; fi; else if run loadimage; then run mmcboot; else run netboot; fi; fi; fi; fi;

 

Regards

Harvey

 

0 Kudos
Reply
1,093 Views
pigbrian
Contributor II

Dear Harvey,

 

I completed secure boot of IMX8DXL and IMX8MP.

 

Thank you for your help.

1,408 Views
pigbrian
Contributor II

Dear Harvey,

 

This is my step.

ahab_status
Lifecycle: 0x0020, NXP closed

SECO Event[0] = 0x0087F000
CMD = AHAB_AUTH_CONTAINER_REQ (0x87)
IND = AHAB_BAD_SIGNATURE_IND (0xF0)

sc_seco_get_event: idx: 1, res:3

 

The fuse command need to "y" prompt as follow.

 

=> fuse prog 0 730 0x311d12f2
Programming bank 0 word 0x000002da to 0x311d12f2...
Warning: Programming fuses is an irreversible operation!
This may brick your system.
Use this command only if you are sure of what you are doing!

Really perform this fuse programming? <y/N>
y
Warning: Words in this index range have ECC protection
and can only be programmed once per word. Individual bit
operations will be rejected after the first one.


Really program this word? <y/N>

 

 

And I used "-y" option. but it's need one "y" prompt

=> fuse prog -y 0 731 0x7c530a0d
Programming bank 0 word 0x000002db to 0x7c530a0d...
Warning: Words in this index range have ECC protection
and can only be programmed once per word. Individual bit
operations will be rejected after the first one.


Really program this word? <y/N>

 

I made a uuu script as below.

FB: ucmd fuse prog -y 0 730 0x311D12F2

 

It's failed.

1:242 1/17 [Bulk(R):LIBUSB_ERROR_TIMEOUT ] FB: ucmd fuse prog -y 0 730 0x311D12F2

 

What method should we use when we mass produce?

 

BR,

 

0 Kudos
Reply
1,452 Views
pigbrian
Contributor II

Dear Harvey,

Now, I was modified CSF offset and Signature Block offset on csf_ahab.txt

It was successfully.

cst-3.1.0/release/linux64/bin$ ./cst -o boot_ahab.bin -i cits_ahab.txt
CSF Processed successfully and signed image available in boot_ahab.bin

 

If I meet a problem, I write a reply.

Thank you.

0 Kudos
Reply
1,440 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi @pigbrian 

Please let me know if further support needed.

 

Regards

Harvey

0 Kudos
Reply
1,453 Views
pigbrian
Contributor II

Hi, Harvey

Thank you for your reply.

I tried with your comment.

$ cd <work>/imx-mkimage
$ make SOC=iMX8DXL REV=A0 flash

mkimage_imx8 -soc DXL -rev A0 -append mx8dxlb0-ahab-container.img -c -scfw scfw_tcm.bin -ap u-boot-atf.bin a35 0x80000000 -dummy 0x87fc0000 -out flash.bin
~~~
cst-3.1.0/release/linux64/bin$ ./cst -o boot_ahab.bin -i cits_ahab.txt

[ERROR] CST: Offsets are not consistent with the input binary to be signed
__________

$ make SOC=iMX8DXL REV=B0 flash_spl
SPL_CMD="-ap u-boot-spl.bin_split_a a35 0x00100000 -data u-boot-spl.bin_split_b a35 0x110000"; \
./../mkimage_imx8 -soc DXL -rev A0 -dcd skip -append mx8dxlb0-ahab-container.img -c -scfw scfw_tcm.bin $SPL_CMD -dummy 0x110000 -out flash.bin
~~~
cst-3.1.0/release/linux64/bin$ ./cst -o boot_ahab.bin -i cits_ahab.txt
[ERROR] CST: Offsets are not consistent with the input binary to be signed

How do I create a signed image with mkimage?

BR,

pigbrian

0 Kudos
Reply
1,455 Views
pigbrian
Contributor II

Hi, Harvey

 

Thank you for your reply.

 

I tried with your comment.

 

$ cd <work>/imx-mkimage
make SOC=iMX8DXL REV=A0 flash

mkimage_imx8 -soc DXL -rev A0 -append mx8dxlb0-ahab-container.img -c -scfw scfw_tcm.bin -ap u-boot-atf.bin a35 0x80000000 -dummy 0x87fc0000 -out flash.bin

 

~~~

 

cst-3.1.0/release/linux64/bin$ ./cst -o boot_ahab.bin -i cits_ahab.txt

[ERROR] CST: Offsets are not consistent with the input binary to be signed

 

How do I create a signed image with mkimage?

 

BR,

pigbrian

0 Kudos
Reply
1,459 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi @pigbrian 

The i.MX8DXL is with AHAB-enabled devices, and the boot images consist of containers.

That is different from i.MX8MP. The mx8_mx8x_secure_boot.txt and AN12312 can help for you.

About fuse and fusemap, the SRM can be found from https://www.nxp.com/products/iMX8XLite 

Send you guide how to apply for that.

 

Regards

Harvey

 

%3CLINGO-SUB%20id%3D%22lingo-sub-2169267%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EHow%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2169267%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%20Guys%2C%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EI%20already%20enabled%20HAB%20in%20imx8mp%2C%20but%20imx8dxl%20doesn't%20have%20enough%20information%20about%20HAB.%3C%2FP%3E%3CP%3E1.%20imx-mkimage%20doesn't%20support%20the%20print_fit_hab%20option%20for%20imx8dxl.%3C%2FP%3E%3CP%3E2.%20I%20can't%20find%20a%20way%20to%20fuse%20the%20register%20map%20for%20imx8dxl%20online.%3C%2FP%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3ECould%20you%20please%20explain%20how%20to%20activate%20HAB%3F%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3EThank%20you.%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2172541%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2172541%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%20Harvey%2C%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EI%20completed%20secure%20boot%20of%20IMX8DXL%20and%20IMX8MP.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EThank%20you%20for%20your%20help.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2172534%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2172534%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%3C%2FP%3E%0A%3CP%3EPlease%20check%20again%20the%20relevant%20envi%20configuration%20in%20uboot.%3C%2FP%3E%0A%3CP%3Eand%20have%20you%20loaded%20them%3F%3C%2FP%3E%0A%3CP%3Epri%20bsp_bootcmd%3CBR%20%2F%3Ebsp_bootcmd%3Decho%20Running%20BSP%20bootcmd%20...%3B%20mmc%20dev%20%24%7Bmmcdev%7D%3B%20if%20mmc%20rescan%3B%20then%20if%20run%20loadbootscript%3B%20then%20run%20bootscript%3B%20else%20if%20test%20%24%7Bsec_boot%7D%20%3D%20yes%3B%20then%20if%20run%20loadcntr%3B%20then%20run%20mmcboot%3B%20else%20run%20netboot%3B%20fi%3B%20else%20if%20run%20loadimage%3B%20then%20run%20mmcboot%3B%20else%20run%20netboot%3B%20fi%3B%20fi%3B%20fi%3B%20fi%3B%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3ERegards%3C%2FP%3E%0A%3CP%3EHarvey%3C%2FP%3E%0A%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2170819%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2170819%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%20Harvey.%3C%2FP%3E%3CP%3E%3CBR%20%2F%3ENow%2C%20I%20trying%20kernel%20signing.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E1.%26nbsp%3Bauth_cntr%20%3CCONTAINER%20address%3D%22%22%3E%3CBR%20%2F%3Esolved.%3C%2FCONTAINER%3E%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3E%3D%26gt%3B%20ext2load%20mmc%200%3A2%200x98000000%20%2Fboot%2FImage_signed%3CBR%20%2F%3E28539904%20bytes%20read%20in%20149%20ms%20(182.7%20MiB%2Fs)%3C%2FP%3E%3CP%3E%3D%26gt%3B%20auth_cntr%200x98000000%3CBR%20%2F%3EAuthenticate%20OS%20container%20at%200x98000000%3C%2FP%3E%3CP%3E%3D%26gt%3B%20ext2load%20mmc%200%3A2%200x80700000%20%2Fboot%2Fimx8dxl-v2x.dtb%3CBR%20%2F%3E54417%20bytes%20read%20in%205%20ms%20(10.4%20MiB%2Fs)%3C%2FP%3E%3CBR%20%2F%3E%3CP%3Ecreated%20some%20env%20parameters%3C%2FP%3E%3CP%3Efdtcontroladdr%3D87a540d0%3CBR%20%2F%3Efileaddr%3D80280000%3CBR%20%2F%3Efilesize%3D1b28200%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3D%26gt%3B%20booti%200x80280000%20-%200x80700000%3CBR%20%2F%3EBad%20Linux%20ARM64%20Image%20magic!%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EWhat%20should%20I%20check%3F%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EBR%2C%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2170797%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2170797%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%20harvey%2C%3C%2FP%3E%3CBR%20%2F%3E%3CP%3ENow%2C%20I%20trying%20kernel%20signing.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EAccording%20to%20sign_os_cntr.txt%2C%3C%2FP%3E%3CP%3ENote%3A%20OS%20image%20can%20also%20be%20authenticated%20by%20running%20a%20U-Boot%20command%3A%3C%2FP%3E%3CP%3E%3D%26gt%3B%20auth_cntr%20%3CCONTAINER%20address%3D%22%22%3E%3C%2FCONTAINER%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EHow%20to%20check%26nbsp%3B%3CCONTAINER%20address%3D%22%22%3E%20%3F%3C%2FCONTAINER%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EI%20made%20a%20singed.Image%20with%20guide%20document%20and%20copy%20to%20%7Bboard%7D%2Fboot%2FImage.%3C%2FP%3E%3CP%3Ebut%2C%20I%20met%20a%20problem%20as%20follow.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EBad%20Linux%20ARM64%20Image%20magic!%3CBR%20%2F%3E%3D%26gt%3B%20ahab_status%3CBR%20%2F%3ELifecycle%3A%200x0080%2C%20OEM%20closed%3C%2FP%3E%3CP%3Esc_seco_get_event%3A%20idx%3A%200%2C%20res%3A3%3CBR%20%2F%3ENo%20SECO%20Events%20Found!%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EWhat%20should%20I%20check%3F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EBR%2C%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2170753%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2170753%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThe%26nbsp%3B%3CSPAN%3EIND%20%3D%20AHAB_BAD_SIGNATURE_IND%20(0xF0)%20tells%20Bad%20signature%20not%20the%20key%20hash%20error.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EThe%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fwebapp%2FDownload%3FcolCode%3DAN12312%26amp%3Blocation%3Dnull%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3EAN12312%3C%2FA%3E%26nbsp%3Bprovides%20help.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EPlease%20check%20again%20the%20signature%20procedure.%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%3CSPAN%3ERegards%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EHarvey%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2170726%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2170726%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%20Harvey%2C%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EWhen%20I%20compared%20keys%20%22%3CSPAN%3Eod%20-t%20x4%20ettifos_cits_fuse.bin%22%20with%20%22fuse%20read%200%20730%2016%22%2C%20all%20of%20keys%20are%20same.%3CBR%20%2F%3EWhy%20happened%20%22IND%20%3D%20AHAB_BAD_SIGNATURE_IND%20(0xF0)%22%20%3F%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2170715%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2170715%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%20Harvey%2C%3CBR%20%2F%3Eyou%20are%20right.%3CBR%20%2F%3E%3CSPAN%3EThe%20AHAB%20events%20(%3C%2FSPAN%3E%3CSPAN%3EIND%20%3D%20AHAB_BAD_SIGNATURE_IND%20(0xF0)%3C%2FSPAN%3E%3CSPAN%3E)%20means%20that%20bad%20signature%20during%20the%20signature%20generation.%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EI%20wrote%20some%20incorrect%20keys.%3C%2FSPAN%3E%3C%2FP%3E%3CP%3ECan%20I%20fix%20a%20fused%20key%3F%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2170314%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2170314%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F228774%22%20target%3D%22_blank%22%3E%40pigbrian%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThe%20AHAB%20not%20applied%20to%20i.MX8MP%20so%20can't%20use%20AHAB.%3C%2FP%3E%0A%3CP%3EThe%20AHAB%20events%20(%3CSPAN%3EIND%20%3D%20AHAB_BAD_SIGNATURE_IND%20(0xF0)%3C%2FSPAN%3E)%20means%20that%20bad%20signature%20during%20the%20signature%20generation.%3C%2FP%3E%0A%3CP%3EYou%20can%20use%20the%20%22%3CSPAN%3EFB%3A%20ucmd%20fuse%20prog%20-y%200%20730%200x311D12F2%3C%2FSPAN%3E%22%20in%20your%20uuu%20script.%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3ERegards%3C%2FP%3E%0A%3CP%3EHarvey%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2170064%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2170064%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CSPAN%3EHi%2C%20Harvey%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EI%20was%20found%20a%20option%20as%20below.%3CBR%20%2F%3Esetenv%20force_prog_ecc%20y%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EWhen%20I%20search%20websites%2C%20IMX8MP%20using%20HAB4.%3C%2FP%3E%3CP%3ECan%20IMX8MP%20use%20AHAB%20%3F%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2170012%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2170012%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%20Harvey%2C%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EThis%20is%20my%20step.%3C%2FP%3E%3CP%3Eahab_status%3CBR%20%2F%3ELifecycle%3A%200x0020%2C%20NXP%20closed%3C%2FP%3E%3CP%3ESECO%20Event%5B0%5D%20%3D%200x0087F000%3CBR%20%2F%3ECMD%20%3D%20AHAB_AUTH_CONTAINER_REQ%20(0x87)%3CBR%20%2F%3EIND%20%3D%20AHAB_BAD_SIGNATURE_IND%20(0xF0)%3C%2FP%3E%3CP%3Esc_seco_get_event%3A%20idx%3A%201%2C%20res%3A3%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EThe%20fuse%20command%20need%20to%20%22y%22%20prompt%20as%20follow.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3D%26gt%3B%20fuse%20prog%200%20730%200x311d12f2%3CBR%20%2F%3EProgramming%20bank%200%20word%200x000002da%20to%200x311d12f2...%3CBR%20%2F%3EWarning%3A%20Programming%20fuses%20is%20an%20irreversible%20operation!%3CBR%20%2F%3EThis%20may%20brick%20your%20system.%3CBR%20%2F%3EUse%20this%20command%20only%20if%20you%20are%20sure%20of%20what%20you%20are%20doing!%3C%2FP%3E%3CP%3EReally%20perform%20this%20fuse%20programming%3F%20%3CY%3E%3CBR%20%2F%3Ey%3CBR%20%2F%3EWarning%3A%20Words%20in%20this%20index%20range%20have%20ECC%20protection%3CBR%20%2F%3Eand%20can%20only%20be%20programmed%20once%20per%20word.%20Individual%20bit%3CBR%20%2F%3Eoperations%20will%20be%20rejected%20after%20the%20first%20one.%3C%2FY%3E%3C%2FP%3E%3CP%3E%3CBR%20%2F%3EReally%20program%20this%20word%3F%20%3CY%3E%3C%2FY%3E%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3EAnd%20I%20used%20%22-y%22%20option.%20but%20it's%20need%20one%20%22y%22%20prompt%3C%2FP%3E%3CP%3E%3D%26gt%3B%20fuse%20prog%20-y%200%20731%200x7c530a0d%3CBR%20%2F%3EProgramming%20bank%200%20word%200x000002db%20to%200x7c530a0d...%3CBR%20%2F%3EWarning%3A%20Words%20in%20this%20index%20range%20have%20ECC%20protection%3CBR%20%2F%3Eand%20can%20only%20be%20programmed%20once%20per%20word.%20Individual%20bit%3CBR%20%2F%3Eoperations%20will%20be%20rejected%20after%20the%20first%20one.%3C%2FP%3E%3CP%3E%3CBR%20%2F%3EReally%20program%20this%20word%3F%20%3CY%3E%3C%2FY%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EI%20made%20a%20uuu%20script%20as%20below.%3C%2FP%3E%3CP%3EFB%3A%20ucmd%20fuse%20prog%20-y%200%20730%200x311D12F2%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EIt's%20failed.%3C%2FP%3E%3CP%3E1%3A242%201%2F17%20%5BBulk(R)%3ALIBUSB_ERROR_TIMEOUT%20%5D%20FB%3A%20ucmd%20fuse%20prog%20-y%200%20730%200x311D12F2%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EWhat%20method%20should%20we%20use%20when%20we%20mass%20produce%3F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EBR%2C%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2169637%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2169637%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F228774%22%20target%3D%22_blank%22%3E%40pigbrian%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EPlease%20let%20me%20know%20if%20further%20support%20needed.%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3ERegards%3C%2FP%3E%0A%3CP%3EHarvey%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2169444%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2169444%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EDear%20Harvey%2C%3C%2FP%3E%3CP%3ENow%2C%20I%20was%20modified%20CSF%20offset%20and%26nbsp%3BSignature%20Block%20offset%20on%20csf_ahab.txt%3C%2FP%3E%3CP%3EIt%20was%20successfully.%3C%2FP%3E%3CP%3Ecst-3.1.0%2Frelease%2Flinux64%2Fbin%24%20.%2Fcst%20-o%20boot_ahab.bin%20-i%20cits_ahab.txt%3CBR%20%2F%3ECSF%20Processed%20successfully%20and%20signed%20image%20available%20in%20boot_ahab.bin%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EIf%20I%20meet%20a%20problem%2C%20I%20write%20a%20reply.%3C%2FP%3E%3CP%3EThank%20you.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2169437%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2169437%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%20Harvey%3C%2FP%3E%3CP%3EThank%20you%20for%20your%20reply.%3C%2FP%3E%3CP%3EI%20tried%20with%20your%20comment.%3C%2FP%3E%3CP%3E%24%20cd%20%3CWORK%3E%2Fimx-mkimage%3CBR%20%2F%3E%24%20make%20SOC%3DiMX8DXL%20REV%3DA0%20flash%3C%2FWORK%3E%3C%2FP%3E%3CP%3Emkimage_imx8%20-soc%20DXL%20-rev%20A0%20-append%20mx8dxlb0-ahab-container.img%20-c%20-scfw%20scfw_tcm.bin%20-ap%20u-boot-atf.bin%20a35%200x80000000%20-dummy%200x87fc0000%20-out%20flash.bin%3CBR%20%2F%3E~~~%3CBR%20%2F%3Ecst-3.1.0%2Frelease%2Flinux64%2Fbin%24%20.%2Fcst%20-o%20boot_ahab.bin%20-i%20cits_ahab.txt%3C%2FP%3E%3CP%3E%5BERROR%5D%20CST%3A%20Offsets%20are%20not%20consistent%20with%20the%20input%20binary%20to%20be%20signed%3CBR%20%2F%3E__________%3C%2FP%3E%3CP%3E%24%20make%20SOC%3DiMX8DXL%20REV%3DB0%20flash_spl%3CBR%20%2F%3ESPL_CMD%3D%22-ap%20u-boot-spl.bin_split_a%20a35%200x00100000%20-data%20u-boot-spl.bin_split_b%20a35%200x110000%22%3B%20%5C%3CBR%20%2F%3E.%2F..%2Fmkimage_imx8%20-soc%20DXL%20-rev%20A0%20-dcd%20skip%20-append%20mx8dxlb0-ahab-container.img%20-c%20-scfw%20scfw_tcm.bin%20%24SPL_CMD%20-dummy%200x110000%20-out%20flash.bin%3CBR%20%2F%3E~~~%3CBR%20%2F%3Ecst-3.1.0%2Frelease%2Flinux64%2Fbin%24%20.%2Fcst%20-o%20boot_ahab.bin%20-i%20cits_ahab.txt%3CBR%20%2F%3E%5BERROR%5D%20CST%3A%20Offsets%20are%20not%20consistent%20with%20the%20input%20binary%20to%20be%20signed%3CBR%20%2F%3E%3CBR%20%2F%3EHow%20do%20I%20create%20a%20signed%20image%20with%20mkimage%3F%3CBR%20%2F%3E%3CBR%20%2F%3EBR%2C%3C%2FP%3E%3CP%3Epigbrian%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2169402%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2169402%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%2C%20Harvey%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EThank%20you%20for%20your%20reply.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EI%20tried%20with%20your%20comment.%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%24%20cd%20%3CWORK%3E%2Fimx-mkimage%3CBR%20%2F%3E%24%26nbsp%3B%3CSPAN%3Emake%3C%2FSPAN%3E%20%3CSPAN%3ESOC%3DiMX8DXL%3C%2FSPAN%3E%20%3CSPAN%3EREV%3DA0%3C%2FSPAN%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%3Eflash%3C%2FSPAN%3E%3C%2FWORK%3E%3C%2FP%3E%3CP%3E%3CSPAN%3Emkimage_imx8%20-soc%20DXL%20-rev%20A0%20-append%20mx8dxlb0-ahab-container.img%20-c%20-scfw%20scfw_tcm.bin%20-ap%20u-boot-atf.bin%20a35%200x80000000%20-dummy%200x87fc0000%20-out%20flash.bin%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E~~~%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3Ecst-3.1.0%2Frelease%2Flinux64%2Fbin%24%20.%2Fcst%20-o%20boot_ahab.bin%20-i%20cits_ahab.txt%3C%2FP%3E%3CP%3E%5BERROR%5D%20CST%3A%20Offsets%20are%20not%20consistent%20with%20the%20input%20binary%20to%20be%20signed%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EHow%20do%20I%20create%20a%20signed%20image%20with%20mkimage%3F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3EBR%2C%3C%2FP%3E%3CP%3Epigbrian%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2169367%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20How%20to%20activate%20HAB%20on%20imx8dxl%20%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2169367%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F228774%22%20target%3D%22_blank%22%3E%40pigbrian%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EThe%20i.MX8DXL%20is%20with%20AHAB-enabled%20devices%2C%20and%20the%20boot%20images%20consist%20of%20containers.%3C%2FP%3E%0A%3CP%3EThat%20is%20different%20from%20i.MX8MP.%20The%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fnxp-imx%2Fuboot-imx%2Fblob%2Flf_v2025.04%2Fdoc%2Fimx%2Fahab%2Fguides%2Fmx8_mx8x_secure_boot.txt%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3Emx8_mx8x_secure_boot.txt%3C%2FA%3E%26nbsp%3Band%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fwebapp%2FDownload%3FcolCode%3DAN12312%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3EAN12312%3C%2FA%3E%26nbsp%3Bcan%20help%20for%20you.%3C%2FP%3E%0A%3CP%3EAbout%20fuse%20and%20fusemap%2C%20the%20SRM%20can%20be%20found%20from%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fproducts%2FiMX8XLite%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fwww.nxp.com%2Fproducts%2FiMX8XLite%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3ESend%20you%20guide%20how%20to%20apply%20for%20that.%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3ERegards%3C%2FP%3E%0A%3CP%3EHarvey%3C%2FP%3E%0A%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E