i.MX RT117x Boot Configuration

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

i.MX RT117x Boot Configuration

Jump to solution
3,423 Views
Wobaffet
Senior Contributor I

For our project we'll have QSPI flash connected to the pins below: 

Wobaffet_0-1675167982159.png

And our board will use qspi flash as the default boot source, there won't be any other boot device. In this configuration, what should we do about the BOOT_CFG pins? As can be seen on the rt1170 evk board schematic there are a lot of resistors that we don't want in our design. How can this issue be solved?

What is the recommended method to program QSPI flash for the first time for mass production? We don't want to use UART because it is too slow.

Wobaffet_1-1675168526914.png

 

 

 

0 Kudos
Reply
1 Solution
3,256 Views
PabloAvalos
NXP TechSupport
NXP TechSupport

Dear @Wobaffet 

 

Please accept my apologies for the delay on my response. I really appreciate your patience.

 

After I research internally, here are my points:

-Yes, you can burn fuses via UART by using MCU Boot Utility. These pins are the one have to be configured:

PabloAvalos_0-1676407547759.png

In addition, do not forget to configure SW8 to 0001.

 

-Of course, no need to use bus isolation resistors due to the reasons you mentioned.

 

-And yes, you can only use UART or USB for flashing the QSPI Flash.

 

Hope this is helpful! Please let me know if you have some other questions.

 

 

 

Best Regards.
Pablo Avalos.

View solution in original post

0 Kudos
Reply
11 Replies
3,387 Views
Wobaffet
Senior Contributor I

Hello Pablo, 

Thank you for your response, I've checked the documents that you've mentinoned in your answer and I am a little bit confused about the fuses and GPIO overrides. 

  • For the case of fuses, once our custom board is ready, without any program embedded, can we burn fuses via uart by using MCU Boot Utility?
  • For the mass production, if we let Boot_Mode[1:0]=00b GPIO overrides will be ignored and mcu has no program inside at first, it will directly pass to serial download mode, before this happens can we set eFuses via MCU boot utility and set the qspi flash as the boot device. Then flash it, according to the RM this will set the BT_FUSE_SEL=1, which will lead to SMBR bits controlled by eFuse settings which we already configured before. So There is no need for boot config GPIOs hence we don't have to multiplex them with display GPIOs. As a result, no need to use bus isolation resistors? This kind of difference I think can be seen between the SLN-TLHMI- IOT board design which only has a QSPI flash, unlike the EVK board which has lots of flash devices available in the design.
  • Wobaffet_0-1675345508971.pngWobaffet_1-1675345547910.png

     

  • Can we only use UART or USB for flashing the QSPI Flash? 

Thank you in advance! Best Regards

0 Kudos
Reply
3,257 Views
PabloAvalos
NXP TechSupport
NXP TechSupport

Dear @Wobaffet 

 

Please accept my apologies for the delay on my response. I really appreciate your patience.

 

After I research internally, here are my points:

-Yes, you can burn fuses via UART by using MCU Boot Utility. These pins are the one have to be configured:

PabloAvalos_0-1676407547759.png

In addition, do not forget to configure SW8 to 0001.

 

-Of course, no need to use bus isolation resistors due to the reasons you mentioned.

 

-And yes, you can only use UART or USB for flashing the QSPI Flash.

 

Hope this is helpful! Please let me know if you have some other questions.

 

 

 

Best Regards.
Pablo Avalos.

0 Kudos
Reply
3,238 Views
Wobaffet
Senior Contributor I

Dear Pablo,

Thank you for the time and effort you've put into this matter. 

I'd like to ask if is it possible to program QSPI flash first time via SWD (MCU Link or J-Link). Because we don't have a USB in our design and UART will be slow for mass production.

If so is it possible to flash our program encrypted with SWD and Do we need all the JTAG pins, or 

POR-SWDIO-SWCLK-VDD-GND pins would be sufficient?

Thank you in advance!

Best Regards. 

 

0 Kudos
Reply
3,218 Views
PabloAvalos
NXP TechSupport
NXP TechSupport

Dear @Wobaffet 

 

Thanks a lot for your quick response.

 

Regarding your questions, yes, you will be able to use SWD with MCU-Link or J-Link, please take a view on this post on our community that hopefully it might be from your interest:

https://community.nxp.com/t5/i-MX-RT-Knowledge-Base/RT600-MCUXpresso-JLINK-debug-QSPI-flash/ta-p/134...

 

About JTAG pins, I am double confirming if it is possible to flash with encryption/security with only those pins, I will let you know later.

 

Thanks a lot.

 

BR
Pablo Avalos.

2,934 Views
Wobaffet
Senior Contributor I

Hello Pablo, 

Any news about the JTAG pin situation? Thank you in advance!

Best Regards.

0 Kudos
Reply
2,774 Views
PabloAvalos
NXP TechSupport
NXP TechSupport

Hi @Wobaffet 

 

Yes, after double-confirming, JTAG pins are the same used as flashing a normal image.

You also may take a look on this couple of post from our community answered by Yuri, as additional support.

https://community.nxp.com/t5/i-MX-RT/Encrypted-firmware-via-JTAG/m-p/802936#M971

https://community.nxp.com/t5/i-MX-Processors/Encrypted-firmware-via-JTAG/m-p/860353#M131299

 

Hope that helps!

 

Thank you for your patience.
BR.
Pablo Avalos.

0 Kudos
Reply
2,766 Views
Wobaffet
Senior Contributor I

Hello Pablo

       Thank you for your answer. So just to confirm, We don't need to use all the JTAG pins for first-time programming an encrypted image right? SWD pins should be sufficient for our purpose?

Thank you in advance!

Best Regards.

0 Kudos
Reply
2,755 Views
PabloAvalos
NXP TechSupport
NXP TechSupport

That is correct.

 

BR.
Pablo Avalos.

0 Kudos
Reply
3,367 Views
Wobaffet
Senior Contributor I
reminder.
0 Kudos
Reply
3,358 Views
PabloAvalos
NXP TechSupport
NXP TechSupport

Hi @Wobaffet 

 

I am now in the process of reviewing internally your update, please allow me a couple of more days to reach you back with an answer.

 

Thanks a lot for your patience.

 

Best Regards.
Pablo Avalos.

3,401 Views
PabloAvalos
NXP TechSupport
NXP TechSupport

Hi @Wobaffet 

 

Thanks a lot for reaching our technical support and thanks for your patience.

 

Regarding your concerns, for booting from QSPI External Flash, please refer to the Chapter 10.6 from Reference Manual and Table 3. from MIMXRT1170 EVK Board Hardware User's Guide. Additionally you can check this App Notes that are useful:

AN12107

AN12108

 

For "resistors that you don't want in your design", please refer to Hardware User Guide from RT1170 to see if they are fully needed.

 

For your question "What is the recommended method to program QSPI flash for the first time for mass production?" -The best tools to program those are MCUXpresso Secure Provisioning Tool or MCU Boot Utility, but you can use whatever tool for flash your external memory.

 

Hope this information was helpful, please let me know if you have more questions I can help.

 

Best Regards.
Pablo Avalos.

0 Kudos
Reply