MPC8309TWR Board JTAG connectivity issue

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

MPC8309TWR Board JTAG connectivity issue

2,350 Views
jitenpatel
Contributor II

Hi all,
I am facing issue while connecting JTAG with MPC8309 board. I am using codewarrior TAP with CodeWarrior for Power Architecture Version: 10.4.0. Below are the steps I followed :-

- Created Codewarrior Bareboard project
- selected 8309 processor for the project
- For Debug Target Settings 
- Debugger Connection type: Hardware
- Board: 8309TWR
- Connection type : Code Warrior TAP
- Build Settings 
- Language : C
- Toolchain : PPC Freescale 
- Floating Point : Hardware 
- Processing Model
- AMP (one project per core)
- Using above settings build project for MPC8309TWR

=> Now when we try to connect the board using Debug Configuration(generated while creating project), gives below error :-
Error launching 8309-core00_RAM_8309_Connect
CCSProtocolPlugin : Failed to correctly configure the JTAG chain

=> Also when tried to debug using CCS(Code warrior connection server) it seems that our JTAG is not able to scan target system. Below are the attached CCS logs:-

(bin) 50 % source IDcode.tcl
Scanning for available TAPs connected via USB.....
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+      Available Remote Connections
+
+   1 -  CodeWarriorTAP  -  00:04:9f:03:9b:7d
+   2 -  CodeWarriorTAP  -  <Specify IP Address>
+   3 -  EthernetTAP  -  <Specify IP Address>
+   4 -  GigabitTAP  -  <Specify IP Address>
+
+   x  - Exit Script without Changes
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Specify connection:
1
Configuring TAP Interface....
Configured Connection: cwtap : 00:04:9f:03:9b:7d
TDO -----
        | 
        * Device 0  IDCODE: FFFFFFFF  Device: Unknown Device
        * Device 1  IDCODE: FFFFFFFF  Device: Unknown Device
        * Device 2  IDCODE: FFFFFFFF  Device: Unknown Device
        * Device 3  IDCODE: FFFFFFFF  Device: Unknown Device
        * Device 4  IDCODE: FFFFFFFF  Device: Unknown Device
        * Device 5  IDCODE: FFFFFFFF  Device: Unknown Device
        * Device 6  IDCODE: FFFFFFFF  Device: Unknown Device
        * Device 7  IDCODE: FFFFFFFF  Device: Unknown Device
        | 
TDI -----
###################################################
#
#    configTAP -  Redefine TAP interface
#
#    scanboard -  Scans the target system
#    and returns the JTAG IDCode                 
#
#    ir  -  Loopback test
#
###################################################

Please suggest solution for the above problem, is this related to MPC8309 hardware switch settings or any software configuration required to debug MPC8309twr board. If possible please provide debugging steps to track the issue.

0 Kudos
15 Replies

1,743 Views
alexander_yakov
NXP Employee
NXP Employee

I'm quite sure if the board works properly (U-boot output is visible), than RCW loaded in board flash is correct and you do not need to use jtag file with RCW override. However, if you are using our board and board settings are set as desired, than this RCW override value (jtag file) should also work properly. Please compare RCW value you have programmed in onboard flash with RCW value specified in 8309TWR_HRCW_jtag.txt to understand the difference.

If the issue is not related to RCW (for example if you see the same result when jtag file is not used), and another board works properly in this particular debug setup, than we can consider debugger and debug probe are set correctly, and the problem is with debug interface (JTAG port) on the board.

We have similar problem here in lab with SOM board, it works properly but does not respond to JTAG. This is board issue.

Please follow board warranty repair/replacement procedure described in warranty card enclosed in board package.


Have a great day,
Alexander

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

1,743 Views
jitenpatel
Contributor II

Alexander,

You were  correct. There was board issue. We isolated one IC (MC74LCX245DTG) used in the reference MPC8309TWR board and it worked fine .

0 Kudos

1,743 Views
addiyi
NXP Employee
NXP Employee

Is this a custom board?

Try to use a lower jtag speed. If this not help (the idcode is not read when use IDcode.tcl) and the board is custom, you should check the jtag design.

Adrian

0 Kudos

1,743 Views
jitenpatel
Contributor II

This is not custom board. Its MPC8309TWR  board. 

By default jtag speed was 10230 Khz and we tried it with 4000 Khz but the issue still remains the same.

Error launching 8308-core00_RAM_8309_Connect
CCSProtocolPlugin : Failed to correctly configure the JTAG chain

0 Kudos

1,743 Views
addiyi
NXP Employee
NXP Employee

Ok. Then RCW is possible to be missing. Try to use RCW override to cnnect to the board. RCW override details can be found in Targeting manual, under /PA/Help/PDF.

Adrian

0 Kudos

1,743 Views
jitenpatel
Contributor II

Hi Adrian,

Thanks for suggestion but the problem still remains same. I am using 8309TWR_HRCW_jtag.txt file under PA/PA_Support/Initialization_Files/jtag_chains  directory that is used to override RCW. The error remains the same CCSProtocolPlugin : Failed to correctly configure the JTAG chain.

By default the MPC8309TWR board has nor flash and it has RCW and all other required images. We are able to boot from NOR so i don't think there is any issue with RCW.

One more observation is, we also have  MPC8308 SOM board. Using the same configuration and setting we are successfully able to connect JTAG  with that board. But in case of MPC8309TWR board it fails.

0 Kudos

1,743 Views
addiyi
NXP Employee
NXP Employee

So, you are saying the uboot works fine for this board? If yes, indeed the RCW problem is not the reason for the error. One other try on your side, if uboot is running well, is to set and use a reset delay (at least 2000ms). Also, check the switches to be as in readme provided in CW.

Adrian

0 Kudos

1,743 Views
jitenpatel
Contributor II

Andrian,

Yes uboot works fine. Also i have verified switch settings as per ReadME file of CW project but still the same issue prevails.

CCSProtocolPlugin : Failed to correctly configure the JTAG chain

One other try on your side, if uboot is running well, is to set and use a reset delay (at least 2000ms).

I am not clear what you are suggesting. We are not in a position to reflash new u-boot image form running uboot as it might corrupt the image and we don't have any alternate option.

0 Kudos

1,743 Views
addiyi
NXP Employee
NXP Employee

Reset delay is set in CodeWarrior (Go to Debug Configurations > Edit > Advanced tab > Reset delay (ms) and set i to at least 2000). In some conditions CW is not able to reset the target and this could lead to that error.

If this is not working, than it is possible to be a jtag hardware issue.

Adrian

0 Kudos

1,743 Views
jitenpatel
Contributor II

Andrian,

I am not getting any option for Reset Delay, We have CCS timeout option, that was set as 15 by default. I tried changing it to 20, but didn't work.

debug.png

I am not sure why it could be jtag Hardware issue as we are able to connect MPC8308 board with the same jtag hardware. 

0 Kudos

1,743 Views
addiyi
NXP Employee
NXP Employee

You're right.

Try the following in ccs console

config cc cwtap
ccs::config_chain mpc83xx
ccs::config_template 0 0 0x000007d0

ccs::reset_to_debug

Adrian

0 Kudos

1,743 Views
jitenpatel
Contributor II

Adrian,

I got the below error:-

bin) 52 % config cc cwtap
(bin) 53 % ::ccs::config_chain mpc83xx
mpc83xx: Core not responding
(bin) 54 % ::ccs::config_template 0 0 0x000007d0
Invalid parameter
(bin) 55 % ::ccs::reset_to_debug
Library not found

0 Kudos

1,743 Views
addiyi
NXP Employee
NXP Employee

Last thing you can try to check the jtag interface:

(bin) 56 % config cc cwtap

(bin) 57 % ccs::config_chain testcore

(bin) 58 % jtag::lock

(bin) 59 % jtag::reset_tap 1

(bin) 59 % jtag::reset_tap 1

(bin) 60 % jtag::scan_in dr 256

0x00000000000000000000000000000000000000000000000016B0001D5BA00477

(bin) 61 % jtag::unlock

The idcode of the SoC should be present in the output of the jtag::scan_in command. If the idcode is not there, the jtag is not working properly. 

Adrian

0 Kudos

1,743 Views
brettstahlman
Contributor III

Adrian,

I followed this procedure and got what appears to be a valid IDCODE...

(bin) 18 % jtag::scan_in dr 256
0x000000000000000000000000000000000000000000000000000000004BA00477

...and yet when I attempt to connect in CodeWarrior, I get "No DAP device found on the JTAG chain", which leads me to suspect that the IDCODE 4BA00477 is not the expected value for the LS1012A RDB. Additional details may be found here:

https://community.nxp.com/thread/465138 

Thanks,

Brett S.

0 Kudos

1,743 Views
jitenpatel
Contributor II

Adrian,

Thanks for your support. The issue has been resolved. There was hardware problem in the board, there was a chip whose signals were muxed with jtag signal. The chip supposed to drive proper output(voltage levels) but was not happening. We isolated the chip and it worked fine. 

0 Kudos