Hi
I tried Option 3&2 of DDR3 stress tester with i.MX7D-Sabre.
Option 3(U-Boot) worked correctly but Option 2(JTAG) didn't display anything, I don't know why.
i.MX6/7 DDR Stress Test Tool V3.00
https://community.nxp.com/docs/DOC-105652
i.MX7D DRAM Register Programming Aid
https://community.nxp.com/docs/DOC-152468
Option 3 U-Boot: ddr-test-uboot-jtag-mx7d.bin
Option 2 DDR Stress Tester: JTAG Interface ddr-test-uboot-jtag-mx7d.elf
Here is my commands of SEGGER J-Link Jtag.
What was wrong with my setting or commands?
C:\Program Files (x86)\SEGGER\JLink_V630j>JLink.exe -device MCIMX7D7_A7_0 -CommandFile C:\jtag_init_jlink.txt
...
...
Writing 33FFFFFF -> 30000000Writing 10000000 -> 30389800
Writing 10000001 -> 30389880
....
....
Writing 00000000 -> 30384130Writing 00000178 -> 30340020
Writing 00000002 -> 30384130
Script processing completed.
Type "connect" to establish a target connection, '?' for help
J-Link>mem 30330120,10 /* IOMUX GPIO->UART */
30330120 = 05 00 00 00 05 00 00 00 00 00 00 00 05 00 00 00
J-Link>mem 30890080,1 /* UART1 enable */
30890080 = 01
J-Link>mem 30384940, 1 /* CCM clock gate */
30384940 = 02
J-Link>loadbin C:\Users\160703\Desktop\mx7d_ddr_cal_jtag\ddr-test-uboot-jtag-mx7d.bin 910000
Halting CPU for downloading file.
Downloading file [C:\Users\160703\Desktop\mx7d_ddr_cal_jtag\ddr-test-uboot-jtag-mx7d.bin]...
O.K.
J-Link>setpc 910000 /* Option2 image */
J-Link>g /* display no characters on debug port(uart1) */
J-Link>
J-Link>
J-Link>loadfile C:\Users\160703\Desktop\mx7d_ddr_cal_jtag\ddr-test-uboot-jtag-mx7d.hex 910000
Downloading file [C:\Users\160703\Desktop\mx7d_ddr_cal_jtag\ddr-test-uboot-jtag-mx7d.hex]...
O.K.
J-Link>SetPC 910000 /* converted Option3 image */
J-Link>g /* display no characters on debug port(uart1) */
J-Link>
Can anyone help me?
BTW elf file converted to ihex on the imx7d-sabre linux as following.
$ cp /run/media/mmcblk0p1/ddr*.elf .
$ objcopy -O ihex ddr-test-uboot-jtag-mx7d.elf /run/media/mmcblk0p1/ddr-test-uboot-jtag-mx7d.hex
Hello,
I.MX7 should be in serial (USB) downloader mode for JTAG.
"Normally, in order to avoid any boot media that might be present, the boot configuration is changed to serial/USB.
The device comes out of reset and ends up staying in the boot ROM as long as no valid serial boot image is fed.
The same would be true of any other boot configuration that has no valid images present. Then, JTAG can be used
from there."
Also, the following may be helpful:
DES-N2059 ARM Development Solutions for Heterogeneous Systems
Regards,
Yuri.
I found my mistakes as following;
(1) init command file
removed 1st line of jtag_init_jlink.txt
//w4 30000000 33FFFFFF
(2) iomux setting
added IOMUX ALT=0 setting for RXD&TXD pin
w4 30330128 0
w4 3033012c 0(3) uart1 enable
corrected UART2 to UART1
//w4 30890080 1
w4 30860080 1
After fixing them, it worked.
In my case, reset was needed before setpc command as following.
J-Link>r
Reset delay: 0 ms
Reset type NORMAL: Toggle reset pin and halt CPU core.
J-Link>setpc 910000
J-Link>g