I've been using an iMX6S on my platform, and have successfully created a signed U-Boot, blown the HAB fuses, and 'closed' the device. But when I perform the same fuse steps on an iMX6UL, I'm unable to close the device. The security fuses themselves (bank 3, word 0-7) read back ok and there are no HAB Events, but when I do 'fuse prog –y 0 6 0x00000002' (to close the device), U-Boot is throwing a 'usage' error.
(NB - I've also first attempted to disable the JTAG with 'fuse prog –y 0 6 0x00100000')
Is the 'close' fuse in a different place on the UL?
Thanks.
Hello,
If there is no HAB even found, you can program fuse SEC_CONFIG[1] to 1
to enable Closed Configuration. The command is
$ echo 0x2 > /sys/fsl_otp/HW_OCOTP_CFG5
It corresponds “fuse prog 0 6 0x2” of U-boot.
For the early i.MX6UL chip, OTPMK fuse is not programmed, so even there is no HAB event in Open Configuration, the signed u-boot can't bootup in Close Configuration. You can check OTPMK_ZERO in SNVS HPSR register, if it's 1, OTPMK is not programmed.
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------