Could someone give us a real example on writing FUSE with fuse uboot command on IMX8mini?

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

Could someone give us a real example on writing FUSE with fuse uboot command on IMX8mini?

836 Views
13614278
Contributor III

We are using imx8mini, we need to boot with boot pin code 00(boot from fuse) instead of boot pin code 10(internal boot).

To be honest, we have no idea how to support this 'boot from fuse' case....

I studied the Reference Manual of IMX8mini in 'Chapter 6 FUSE', and I guess I need to write the BOOT_CFG from FUSE.

But I don't know how to write it with the 'fuse prog' command in uboot.

For example, according the Reference Manual, the BOOT_CFG Addr is 0x470, and for EMMC case, the 15-bit is marked as reserved.

My Question is:

1) How can I determine the 'WORD' data in 'fuse prog', if the BOOT_CFG addr is 0x470, should I use below syntax:

=> fuse prog -y 0 0x470 0x-BOOT_CFG_HEX_DATA

Is above start WORD data 0x470 correct for prog BOOT_CFG?

2) How to deal with the 16-bit Reserved section? Set it as either 0 or 1 is OK?

It's dangerous to prog FUSE, so I have to get correct instruction before doing this....

Thanks

0 Kudos
3 Replies

797 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi 

The latter is the correct usage for fuse to use in uboot command.

 

Best regards

Harvey

 

0 Kudos

808 Views
Harvey021
NXP TechSupport
NXP TechSupport

Hi @13614278 

How can I determine the 'WORD' data in 'fuse prog'?

You can find the "word" at OCOTP (6.3.4.16 Value of OTP Bank1 Word3 (Boot Configuration Info.)
(OCOTP_HW_OCOTP_BOOT_CFG0)), if you plan the Boot from Fuses, the fuse bit can be found at Fusemap Descriptions as below.

Harvey021_0-1666772970202.png

 

How to deal with the 16-bit Reserved section? Set it as either 0 or 1 is OK?

These means reserved, not used, and should not be touched.

 

Best regards

Harvey

0 Kudos

802 Views
13614278
Contributor III

Thank you very much for this, especially on the reservered-bit explaination.

So, should I assume the WORD in 'fuse prog' can be used according to the data sheet.

i.e, the data sheet describe the registry addr is 0x470, while the 6.3.4.16 said it is mapped to "OTP BANK1, word3", 

aaa.png

so, if I want to prog a data(such as 0xFFDDFFDD) to the fuse, which below command can I used: 

=> fuse prog -y 0 0x470 0xFFDDFFDD 

or

=> fuse prog -y 0 3 0xFFDDFFDD 

Which one should I use?

0 Kudos