Programming External Flash using JTAG Interface

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

Programming External Flash using JTAG Interface

1,300 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

1,280 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

1,271 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

1,249 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

1,206 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

1,190 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

1,186 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

1,140 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