Programming External Flash using JTAG Interface

cancel
Showing results for 
Search instead for 
Did you mean: 

Programming External Flash using JTAG Interface

249 Views
sheffernan
Contributor I

Hi,

I'm designing a custom board with the MIMXRT1021 processor and an IS25LP064A QSPI Flash for external boot code. I would like to use the JTAG interface of the MIMXRT1021 and a PEmicro Multilink Universal FX for programming the QSPI Flash in-system. Is this possible, and if so, can I use the 10-pin "Port G" for ARM Cortex-M devices in the Multilink pod?

Labels (1)
0 Kudos
7 Replies

229 Views
Omar_Anguiano
NXP TechSupport
NXP TechSupport

Hello
Hope you are well.
Yes, it is possible to use JTAG, this selection is made through the fuses:

Omar_Anguiano_0-1665007834546.png

 

If you have more questions do not hesitate to ask me.
Best regards,
Omar

0 Kudos

220 Views
sheffernan
Contributor I

Omar,

Thank you for your reply, but I don't really understand your answer. How do I set the fuses properly so that I can use the JTAG interface to program the QSPI Flash? I have the JTAG_MOD pin pulled to GND, but do I need to set the BT_MODE pins to 00 for "Boot from Fuses" or can I leave them set to "10" for "Internal Boot"? Is there something else I need to do in hardware?

0 Kudos

198 Views
Omar_Anguiano
NXP TechSupport
NXP TechSupport

The Boot from fuses functionality makes possible to read Boot_CFG fuses instead of the GPIO at booting time to configure the boot device. So for JTAG, it is not necessary to use that mode otherwise you decide not to use the boot_cfg gpio pins.

The image above suggests that to use JTAG protocol in CM7DAP we need to burn SWD fuse.

If you have more questions do not hesitate to ask me.
Best regards,
Omar

0 Kudos

155 Views
sheffernan
Contributor I

Hi Omar,

I thought I had replied to your latest message, but I don't see it on this thread...

 

How do I burn the SWD fuse?

0 Kudos

139 Views
Omar_Anguiano
NXP TechSupport
NXP TechSupport

You can burn DAP_SJC_SWD_SEL fuse with MCUBootUtility. You can refer to section 4.2 from the GitHub documentation on how to burn the fuses with that tool. Additionally, please consider that to use that tool your device needs to be in Serial Download through USB or UART.

GitHub - JayHeng/NXP-MCUBootUtility: A one-stop boot utility tool based on Python2.7+wxPython4.0, it...

If you have more questions do not hesitate to ask me.
Best regards,
Omar

0 Kudos

135 Views
sheffernan
Contributor I

Omar,

This is why I wanted to doublecheck with you....I do not have a USB or UART interface on my custom board, so it sounds like I CAN'T program the QSPI Flash via JTAG because I don't have any method of burning the SWD fuse....

0 Kudos

89 Views
Omar_Anguiano
NXP TechSupport
NXP TechSupport

There are three ways to burn OTP:

1. NXP-MCUBootUtility tool

2. SDK demo: \SDK_2.11.0_EVK-MIMXRT1010\boards\evkmimxrt1010\driver_examples\ocotp

3. Flashloader package and blhost.exe tool, refer to  https://www.cnblogs.com/henjay724/p/9108176.html

Best regards,
Omar

0 Kudos