How to program rt1170-evk octal flash with JLink

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

How to program rt1170-evk octal flash with JLink

Jump to solution
3,254 Views
yf2
Contributor III

Dear support,

 

We are trying RT1170-EVK with onboard JLink probe and octal flash. Our host side tool is JLink  v7.66a, especially the jLinkGDBServer command line tool. We followed suggestions as this old ticket, using JLinkGDBServer with latest RT-UFL extension, but we failed to program the octal flash successfully, detailed error logs can be found in jlink-win-octal-err.txt.  We can use the same JLink settings to download program to target RAM and run it.

This ticket is created as per suggestion in the old ticket, to avoid confusions, the old one was closed and linked to this one.

 

Regards,

yf2

 

 

Tags (2)
0 Kudos
1 Solution
3,230 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @yf2 ,

  Thanks for your cooperation.

   Now, follow me to test it first.

   You can use the same JLINK driver like me:

1. JLINK v7.60d download link:

https://www.segger.com/downloads/jlink/JLink_Windows_x86_64.exe

You can download it and install it.

2. use my attached file, as I already modify the RT-UFL RT1170 octal flash firmware, that is more good to use.

1)copy my folder iMXRT_UFL to your:

C:\Program Files\SEGGER\JLINKV760\Devices\NXP

2) copy evkmimxrt1170_iled_blinky_octalFlash_cm7.bin and JLinkDevices.xml to your:

C:\Program Files\SEGGER\JLINKV760

3. use JLINK commander to test it on your side:

C:\Program Files\SEGGER\JLINKV760\JLink.exe

Then the command like this:

kerryzhou_0-1657253506142.pngkerryzhou_1-1657253513911.png

Please note, the device select: MIMXRT1170_UFL_L0_Kerry

Then press the on board reset button, SW4, you will find the LED D6,D34 is blinking.

This is my app function: evkmimxrt1170_iled_blinky_octalFlash_cm7.bin

4. About the hardware

SW1:1-OFF,2-OFF,3-ON,4-OFF

SW4:1-OFF,2-OFF,3-ON, others off

kerryzhou_2-1657253668413.png

Please try it on your side, after it works in the windows, then we can go the other steps.

 

Best Regards,

kerry

 

 

 

View solution in original post

0 Kudos
9 Replies
3,229 Views
kerryzhou
NXP TechSupport
NXP TechSupport

About the jLinkGDBServer , the same operation, SWD interface, use device :MIMXRT1170_UFL_L0_Kerry, download app code to 0X30000000.

You can try it on your side.

Normally, we use IDE call JLinkGDBServerCL.exe.

kerryzhou_0-1657254024519.png

 

 

This is the related log:

[08-7-2022 12:22:22] Executing Server: "C:\Program Files\SEGGER\JLINKV760\JLinkGDBServerCL.exe" -nosilent -swoport 2332 -select USB=726285560  -telnetport 2333 -singlerun -endian little -noir -speed auto   -port 2331    -vd -device MIMXRT1170_UFL_L0_Kerry -if SWD -halt -reportuseraction
SEGGER J-Link GDB Server V7.60d Command Line Version

JLinkARM.dll V7.60d (DLL compiled Jan 17 2022 13:14:38)

Command line: -nosilent -swoport 2332 -select USB=726285560 -telnetport 2333 -singlerun -endian little -noir -speed auto -port 2331 -vd -device MIMXRT1170_UFL_L0_Kerry -if SWD -halt -reportuseraction
-----GDB Server start settings-----
GDBInit file:                  none
GDB Server Listening port:     2331
SWO raw output listening port: 2332
Terminal I/O port:             2333
Accept remote connection:      localhost only
Generate logfile:              off
Verify download:               on
Init regs on start:            off
Silent mode:                   off
Single run mode:               on
Target connection timeout:     0 ms
------J-Link related settings------
J-Link Host interface:         USB
J-Link script:                 none
J-Link settings file:          none
------Target related settings------
Target device:                 MIMXRT1170_UFL_L0_Kerry
Target interface:              SWD
Target interface speed:        auto
Target endian:                 little

Connecting to J-Link...
J-Link is connected.
Device "MIMXRT1170_UFL_L0_KERRY" selected.
Firmware: J-Link LPCXpresso V2 compiled Aug 23 2021 09:30:06
Hardware: V1.00
S/N: 726285560
Checking target voltage...
Target voltage: 3.30 V
Listening on TCP/IP port 2331
Connecting to target...
$$UserActionStart$$: Terms of use
$$UserActionEnd$$: Terms of use
Found SW-DP with ID 0x6BA02477
DPIDR: 0x6BA02477
CoreSight SoC-400 or earlier
Scanning AP map to find all available APs
AP[3]: Stopped AP scan as end of AP map has been reached
AP[0]: AHB-AP (IDR: 0x84770001)
AP[1]: AHB-AP (IDR: 0x24770011)
AP[2]: APB-AP (IDR: 0x54770002)
Iterating through AP map to find AHB-AP to use
AP[0]: Core found
AP[0]: AHB-AP ROM base: 0xE00FD000
CPUID register: 0x411FC272. Implementer code: 0x41 (ARM)
Found Cortex-M7 r1p2, Little endian.
FPUnit: 8 code (BP) slots and 0 literal slots
CoreSight components:
ROMTbl[0] @ E00FD000
[0][0]: E00FE000 CID B105100D PID 000BB4C8 ROM Table
ROMTbl[1] @ E00FE000
[1][0]: E00FF000 CID B105100D PID 000BB4C7 ROM Table
ROMTbl[2] @ E00FF000
[2][0]: E000E000 CID B105E00D PID 000BB00C SCS-M7
[2][1]: E0001000 CID B105E00D PID 000BB002 DWT
[2][2]: E0002000 CID B105E00D PID 000BB00E FPB-M7
[2][3]: E0000000 CID B105E00D PID 000BB001 ITM
[1][1]: E0041000 CID B105900D PID 001BB975 ETM-M7
[1][2]: E0042000 CID B105900D PID 004BB906 CTI
[0][1]: E0043000 CID B105900D PID 001BB908 CSTF
Cache: Separate I- and D-cache.

I-Cache L1: 32 KB, 512 Sets, 32 Bytes/Line, 2-Way
D-Cache L1: 32 KB, 256 Sets, 32 Bytes/Line, 4-Way
SetupTarget() start
J-Link script: 0x5AA60FF0 has been written to address 0xFFFC
SetupTarget() end
Found SW-DP with ID 0x6BA02477
DPIDR: 0x6BA02477
CoreSight SoC-400 or earlier
AP map detection skipped. Manually configured AP map found.
AP[0]: AHB-AP (IDR: Not set)
AP[0]: Core found
AP[0]: AHB-AP ROM base: 0xE00FD000
CPUID register: 0x411FC272. Implementer code: 0x41 (ARM)
Found Cortex-M7 r1p2, Little endian.
FPUnit: 8 code (BP) slots and 0 literal slots
CoreSight components:
ROMTbl[0] @ E00FD000
[0][0]: E00FE000 CID B105100D PID 000BB4C8 ROM Table
ROMTbl[1] @ E00FE000
[1][0]: E00FF000 CID B105100D PID 000BB4C7 ROM Table
ROMTbl[2] @ E00FF000
[2][0]: E000E000 CID B105E00D PID 000BB00C SCS-M7
[2][1]: E0001000 CID B105E00D PID 000BB002 DWT
[2][2]: E0002000 CID B105E00D PID 000BB00E FPB-M7
[2][3]: E0000000 CID B105E00D PID 000BB001 ITM
[1][1]: E0041000 CID B105900D PID 001BB975 ETM-M7
[1][2]: E0042000 CID B105900D PID 004BB906 CTI
[0][1]: E0043000 CID B105900D PID 001BB908 CSTF
Cache: Separate I- and D-cache.

I-Cache L1: 32 KB, 512 Sets, 32 Bytes/Line, 2-Way
D-Cache L1: 32 KB, 256 Sets, 32 Bytes/Line, 4-Way
SetupTarget() start
J-Link script: 0x5AA60FF0 has been written to address 0xFFFC
SetupTarget() end
Connected to target
Waiting for GDB connection...Connected to 127.0.0.1
Reading all registers
Connected to 127.0.0.1
Reading all registers
Read 4 bytes @ address 0x30002902 (Data = 0x2B00681B)
Read 4 bytes @ address 0x30002956 (Data = 0x781B4B12)
Reading 64 bytes @ address 0x2003FFC0
Read 4 bytes @ address 0x30002902 (Data = 0x2B00681B)
Read 4 bytes @ address 0x30002956 (Data = 0x781B4B12)
Reading 64 bytes @ address 0x2003FFC0
Received monitor command: reset
Reset: Halt core after reset via DEMCR.VC_CORERESET.
Reset: Reset device via AIRCR.SYSRESETREQ.
AfterResetTarget() start
J-Link script: 0x5AA60FF0 has been written to address 0xFFFC
AfterResetTarget() end
Resetting target
Downloading 8192 bytes @ address 0x30000000 - Verified OK
Downloading 15952 bytes @ address 0x30002000 - Verified OK
Downloading 11300 bytes @ address 0x30005E50 - Verified OK
Downloading 4 bytes @ address 0x30008A74 - Verified OK
J-Link: Flash download: Bank 0 @ 0x30000000: Skipped. Contents already match

Best Regards,

Kerry

0 Kudos
3,231 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @yf2 ,

  Thanks for your cooperation.

   Now, follow me to test it first.

   You can use the same JLINK driver like me:

1. JLINK v7.60d download link:

https://www.segger.com/downloads/jlink/JLink_Windows_x86_64.exe

You can download it and install it.

2. use my attached file, as I already modify the RT-UFL RT1170 octal flash firmware, that is more good to use.

1)copy my folder iMXRT_UFL to your:

C:\Program Files\SEGGER\JLINKV760\Devices\NXP

2) copy evkmimxrt1170_iled_blinky_octalFlash_cm7.bin and JLinkDevices.xml to your:

C:\Program Files\SEGGER\JLINKV760

3. use JLINK commander to test it on your side:

C:\Program Files\SEGGER\JLINKV760\JLink.exe

Then the command like this:

kerryzhou_0-1657253506142.pngkerryzhou_1-1657253513911.png

Please note, the device select: MIMXRT1170_UFL_L0_Kerry

Then press the on board reset button, SW4, you will find the LED D6,D34 is blinking.

This is my app function: evkmimxrt1170_iled_blinky_octalFlash_cm7.bin

4. About the hardware

SW1:1-OFF,2-OFF,3-ON,4-OFF

SW4:1-OFF,2-OFF,3-ON, others off

kerryzhou_2-1657253668413.png

Please try it on your side, after it works in the windows, then we can go the other steps.

 

Best Regards,

kerry

 

 

 

0 Kudos
1,669 Views
许贻辉2023
Contributor I

Hi Dear support
@kerryzhou 
  I followed you to test step by step.Except the version of JLINK driver.
But I can't Download evkmimxrt1170_iled_blinky_octalFlash_cm7.bin into the Octal Flash,Can you help me figure out what's wrong,My board is mimxrt1170-EVK,I have already set BOOT_CFG pin configuration are as follows
 

2023_0-1686899442067.png

2023_1-1686899485535.png

2023_0-1686900072790.png

 

 

0 Kudos
3,197 Views
yf2
Contributor III

@kerryzhou 

 

Thanks for sharing your version of RT-UFL drivers for JLink. I've tried it with JLink v7.66a on Ubuntu and it can download my version of led_blink app to the target. After reset I can see LED blinking as expected.

Would you please teach what have been changed in your version of RT-URL? do I still need to trouble you again to make Hyperflash work later?  Sorry for too many questions as our goal is to use hyperflash but with RT1170-evk we can only verify octal flash.

 

Regards,

yf2 

 

0 Kudos
3,073 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @yf2 ,

  I already write the document, and post about the detail RT-UFL modification for the RT1170 octal flash, a little long, but it should be useful to you!

https://community.nxp.com/t5/i-MX-RT-Knowledge-Base/RT1170-Octal-flash-enablement/ta-p/1498369

 

  Any issues, welcome to create the new question post!

 

Best Regards,

kerry

0 Kudos
3,190 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @yf2 ,

   Don't worry, you are always welcome!

   Any issues, just free to let us know.

   If you have the hyperflash issues, in fact, the same operation. _L1/2 used for Hyper Flash, you still can use the RT-UFL, this flashdriver is very easy to use for the JLINK.

Hyperflash can use it directly. Just octal flash is a little different, that's why I modify it. You can use my modified file directly for octal flash.

  If you meet any issues, just create the new question post and let me know.

  About my changed version, you mean:MIMXRT1170_UFL_L0_Kerry, right?

Don't worry, in the near future, I will write a community document about the RT1170 octal flash and it's flashdriver, at that time, I will share all the detail points at that time.

In this time, for octal flash, just use my MIMXRT1170_UFL_L0_Kerry, for the hyperflash, use the original MIMXRT1170_UFL_L1.

Best Regards,

kerry

0 Kudos
1,949 Views
jackking
Senior Contributor I

@kerryzhou. do you happen to have a UFL version that would work with Adesto EcoXIP octal flash also?

 

 

0 Kudos
1,927 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @jackking ,

  Adesto octal flash should be supported directly by the ongoing UFL.

  You can try it on your side, if you meet any issues, just create the question post and let us know.

 

Best Regards,

Kerry

0 Kudos
1,904 Views
jackking
Senior Contributor I
0 Kudos