Tuesday, April 24th 2018, 10:41pm UTC+2

You are not logged in.

  • Login
  • Register

Dear visitor, welcome to SEGGER Forum. If this is your first visit here, please read the Help. It explains how this page works. You must be registered before you can use all the page's features. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

billf

Beginner

Date of registration: May 12th 2015

Posts: 3

1

Tuesday, May 12th 2015, 5:57pm

Unable to program Kinetis K22 devices over JTAG chain

I am unable to program a Kinetis K22 device over a JTAG chain with the J-Link Basic tool. Do the J-Link MK22FN1M0xxx12 routines support JTAG chains ?

I have three ARM devices on a JTAG chain and JLinkCommander correctly identifies these devices:

Source code

1
2
3
4
Found 3 JTAG devices, Total IRLen = 12:
 #0 Id: 0x4BA00477, IRLen: 04, IRPrint: 0x1, CoreSight JTAG-DP (ARM)
 #1 Id: 0x4BA00477, IRLen: 04, IRPrint: 0x1, CoreSight JTAG-DP (ARM)
 #2 Id: 0x079264F3, IRLen: 04, IRPrint: 0x1, ARM926EJ-S Core


The JTAG chain works for debugging. JLinkCommander allows me select each CPU individually on the chain using the "config" command and I can successfully debug/control each CPU.

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
J-Link>config 4 1
Info: TotalIRLen = 12, IRPrint = 0x0111
Info: Found Cortex-M4 r0p1, Little endian.
Info: FPUnit: 6 code (BP) slots and 2 literal slots
Info: CoreSight components:
Info: ROMTbl 0 @ E00FF000
Info: ROMTbl 0 [0]: FFF0F000, CID: B105E00D, PID: 000BB00C SCS
Info: ROMTbl 0 [1]: FFF02000, CID: B105E00D, PID: 003BB002 DWT
Info: ROMTbl 0 [2]: FFF03000, CID: B105E00D, PID: 002BB003 FPB
Info: ROMTbl 0 [3]: FFF01000, CID: B105E00D, PID: 003BB001 ITM
Info: ROMTbl 0 [4]: FFF41000, CID: B105900D, PID: 000BB9A1 TPIU
Info: ROMTbl 0 [5]: FFF42000, CID: B105900D, PID: 000BB925 ETM
Info: ROMTbl 0 [6]: FFF43000, CID: B105900D, PID: 003BB907 ETB
Info: ROMTbl 0 [7]: FFF44000, CID: B105900D, PID: 001BB908 CSTF
Found 3 JTAG devices, Total IRLen = 12:
 #0 Id: 0x4BA00477, IRLen: 04, IRPrint: 0x1, CoreSight JTAG-DP (ARM)
 #1 Id: 0x4BA00477, IRLen: 04, IRPrint: 0x1, CoreSight JTAG-DP (ARM)
 #2 Id: 0x079264F3, IRLen: 04, IRPrint: 0x1, ARM926EJ-S Core
Cortex-M4 identified.
J-Link>h
PC = 000063B0, CycleCnt = FCAC4ED9
R0 = 00004348, R1 = A5A5A5A5, R2 = A5A5A5A5, R3 = A5A5A5A5
R4 = A5A5A5A5, R5 = A5A5A5A5, R6 = A5A5A5A5, R7 = A5A5A5A5
R8 = A5A5A5A5, R9 = A5A5A5A5, R10= A5A5A5A5, R11= A5A5A5A5
R12= A5A5A5A5
SP(R13)= 1FFF41E8, MSP= 2000FF98, PSP= 1FFF41E8, R14(LR) = 000063AB
XPSR = 81000000: APSR = Nzcvq, EPSR = 01000000, IPSR = 000 (NoException)
CFBP = 02000000, CONTROL = 02, FAULTMASK = 00, BASEPRI = 00, PRIMASK = 00

FPS0 = 00000000, FPS1 = 00000000, FPS2 = 00000000, FPS3 = 00000000
FPS4 = 00000000, FPS5 = 00000000, FPS6 = 00000000, FPS7 = 00000000
FPS8 = 00000000, FPS9 = 00000000, FPS10= 00000000, FPS11= 00000000
FPS12= 00000000, FPS13= 00000000, FPS14= 00000000, FPS15= 00000000
FPS16= 00000000, FPS17= 00000000, FPS18= 00000000, FPS19= 00000000
FPS20= 00000000, FPS21= 00000000, FPS22= 00000000, FPS23= 00000000
FPS24= 00000000, FPS25= 00000000, FPS26= 00000000, FPS27= 00000000
FPS28= 00000000, FPS29= 00000000, FPS30= 00000000, FPS31= 00000000
FPSCR= 02000000


When I use the "device MK22FN1M0xxx12" command, I am unable to erase or program the K22 devices on the JTAG chain.

Source code

1
2
3
4
5
6
7
8
9
10
11
J-Link> device MK22FN1M0xxx12
Info: Device "MK22FN1M0XXX12" selected.
Reconnecting to target...
Info: TotalIRLen = 12, IRPrint = 0x0111
Info: TotalIRLen = ?, IRPrint = 0x..FFFFFFFFFFFFFFFFFFFFFF11
Info: TotalIRLen = ?, IRPrint = 0x..FFFFFFFFFFFFFFFFFFFFFF11
Info: TotalIRLen = ?, IRPrint = 0x..FFFFFFFFFFFFFFFFFFFFFF11
Info: TotalIRLen = ?, IRPrint = 0x..FFFFFFFFFFFFFFFFFFFFFF11
Info: TotalIRLen = ?, IRPrint = 0x..FFFFFFFFFFFFFFFFFFFFFF11
Info: TotalIRLen = ?, IRPrint = 0x..FFFFFFFFFFFFFFFFFFFFFF11
Info: TotalIRLen = ?, IRPrint = 0x..FFFFFFFFFFFFFFFFFFFFFF11


When I physically break the chain and connect the J-Link to only a single K22 I am able to program it correctly.

Can you fix this issue or provide a work around ?

billf

Beginner

Date of registration: May 12th 2015

Posts: 3

2

Monday, June 1st 2015, 3:20pm

No response from Segger Support ?

Can Segger Suppport please have look into this for me ? I need to know if I have to redesign the board or find another JTAG programmer. This issue has been open for 3 weeks without a response from Segger support. I have also emailed Segger and Segger US for support on this issue but have had no reply.

billf

Beginner

Date of registration: May 12th 2015

Posts: 3

3

Wednesday, June 10th 2015, 10:32pm

Partial success

I have modified a board and confirmed that I can successfully program 2 K22 micros over a JTAG chain when there are no other devices in the chain. I suspect the problem is related to the i.mx28 (ARM926EJ-S Core) on the JTAG chain.

SEGGER - Alex

Super Moderator

Date of registration: Dec 18th 2007

Posts: 1,516

4

Monday, June 22nd 2015, 11:06am

Hello Bill,

Sorry to hear that your are running into problems.

Quoted

I have also emailed Segger and Segger US for support on this issue but have had no reply.

This should not happen. Sorry for this.
Can you please let me know the subject of the e-mail, so I can dig where it got lost?

Quoted

I suspect the problem is related to the i.mx28 (ARM926EJ-S Core) on the JTAG chain.

Would it be possible to get a hardware sample from you in order to reproduce the problem?
Right now, I do not see any reason why it should not work having also an i.MX28 in the chain.
Unfortunately, we do not have such a setup here in house.


Best regards
Alex