TX2 - ARM_JTAG vs NV_JTAG

Hi all,

I have a custom board containing a NVIDIA Tegra TX2. I want to debug this board with my Lauterbach module. However, I do have problems to connect to this board. I hope you can support me a bit.

Next to this custom board I have an official Jetson TX2 dev-board, together with the example scripts from Lauterbach I can connect succesfully to this board. When I do an IDCODE read via SYStem.DETECT I get an IDCODE belonging to ARM Ltd. which indicates for me that CoreSight is selected (NVJTAG_SEL=0, ARM_JTAG)

When I try to connect to this custom board, I cannot get a JTAG connection when NVJTAG_SEL=0. I need to set NVJTAG_SEL=1 in order to be able to read an IDCODE. The IDCODE returned via SYStem.DETECT is an IDCODE belonging to NVIDIA, which for me indicates that NVJTAG is now activated (NVJTAG_SEL=1, NV_JTAG).

For once I assumed that maybe the jtag efuses are preventing me from connecting to this device; but that doesn’t seem to be the case:

sh-3.2# cat /sys/devices/3820000.efuse/jtag_disable
0x00000000

Questions:

  1. What is the difference between ARM_JTAG and NV_JTAG? When would I use which option? The TRM is not clear on this topic.
  2. What is preventing me from doing debugging on the custom board? The fact that I can read the NVJTAG IDCODE indicates for me that the connections are OK, the efuses are also not preventing any access? Any idea?

Thank you.

T186 has both arm core and nvidia denver core.
i think you are attaching to different cores in both the process.
generally cpu1 and cpu2 are nvidia denver cores and are turned off by default.