Hi, above diagram is from imxrt1064 RM page 200, and in page 198, there says:
"The boot ROM uses the state of the BOOT_MODE and eFUSEs to determine the boot
device. For development purposes, the eFUSEs used to determine the boot device may be
overridden using the GPIO pin inputs."
1. Can I know what are the Factory default settings? will GPIO has higher priority than eFUSEs by default?
2. How GPIO can overridden eFUSEs? and what are the settings to be done to skip the GPIOs checks?
3. What does the "and/or" exactly mean in the diagram?
Thanks
Solved! Go to Solution.
Hi @djarin ,
Thanks for your interest in the NXP MIMXRT product, I would like to provide service for you.
Answer your questions:
1. Can I know what are the Factory default settings? will GPIO has higher priority than eFUSEs by default?
=>Answer: it is determined by your configuration.
If you don't do the fuse burn, then it will determined by the GPIO pin feature, this is the default situation.
As fuse burn can't be back, just can be from 0 to 1.
fuse default is all 0.
2. How GPIO can overridden eFUSEs? and what are the settings to be done to skip the GPIOs checks?
=>Answer: Not overridden eFuse, you can consider, if you burn the fuse, select boot from the fuse, then it will use the fuse configuration.
If you don't, then it will use GPIO.
Check this RM content, you will be more clear:
3. What does the "and/or" exactly mean in the diagram
=>Answer: some CFG can use the fuse bit even when you use the GPIO as the BOOT_CFG.
Eg, these fuse:
Also can be used with GPIO boot method.
Just the CFG fuse + BT_FUSE_SEL=1, and BOOT_MODE =00, will use the boot from fuse, and use fuse CFG related data.
Wish it helps you!
If you still have question about it, please kindly let me know.
If your question is solved, please help me to mark the correct answer, just to close this case.
Any new issues, welcome to create the new question post, thanks.
Best Regards,
Kerry
Hi @kerryzhou ,
Thank for the reply, I've made a brief summary to confirm my understanding, let me know if this is correct:
Mainly 2 settings involved:
Another question is I understand that the boot ROM will try to locate the FCB at 0x70000000 to have initial QSPI flash config.
I tried appending a mkimage header (64bytes length) at the starting of the binary file (hex/bin).
Which also mean that this header file will be on top of the FCB/IVT/DCD.
Is there an option for me to offset this 64 bytes, so that the ROM bootloader can locate the FCB at 0x70000040?
Thanks
Hi @djarin ,
To RT1064, the FCB is from the offset 0:
FCB is fixed, you can't use it, but if you dont use the SDRAM, you can use the DCD area as your own mkimage heade.
Wish it helps you!
Best Regards,
Kerry
Hi @kerryzhou ,
We need the DCD area for sdram, i've came across this document AN12255: https://www.nxp.com/docs/en/application-note/AN12255.pdf
mentioning about flash remapping, could this be feasible for a XIP boot image that require FCB?
thanks
Hi @djarin ,
To the remap, the AN12255 already give you the answer for the second app:
The FCB just need to program once, the secondary app, don't need to add the FCB.
If you need to add the DCD, just add it in your app.
Wish it helps you!
If you still have question about it, please kindly let me know.
If your question is solved, please help me to mark the correct answer, just to close this case, thanks.
Any new issues, welcome to create the new question post.
Best Regards,
Kerry
Hi @djarin ,
Thanks for your interest in the NXP MIMXRT product, I would like to provide service for you.
Answer your questions:
1. Can I know what are the Factory default settings? will GPIO has higher priority than eFUSEs by default?
=>Answer: it is determined by your configuration.
If you don't do the fuse burn, then it will determined by the GPIO pin feature, this is the default situation.
As fuse burn can't be back, just can be from 0 to 1.
fuse default is all 0.
2. How GPIO can overridden eFUSEs? and what are the settings to be done to skip the GPIOs checks?
=>Answer: Not overridden eFuse, you can consider, if you burn the fuse, select boot from the fuse, then it will use the fuse configuration.
If you don't, then it will use GPIO.
Check this RM content, you will be more clear:
3. What does the "and/or" exactly mean in the diagram
=>Answer: some CFG can use the fuse bit even when you use the GPIO as the BOOT_CFG.
Eg, these fuse:
Also can be used with GPIO boot method.
Just the CFG fuse + BT_FUSE_SEL=1, and BOOT_MODE =00, will use the boot from fuse, and use fuse CFG related data.
Wish it helps you!
If you still have question about it, please kindly let me know.
If your question is solved, please help me to mark the correct answer, just to close this case.
Any new issues, welcome to create the new question post, thanks.
Best Regards,
Kerry