Pynq on ZCU104 hangs when JTAG is used

Hi folks,

I’m having a strange issue, using the ZCU104 with the base design. It also does it with my design, but for reproducibility let’s talk about base. Pynq works fine using the base design, without problems; tried the example notebooks, etc.
Once Pynq has booted, after I connect to the JTAG programmer (Digilent JTAG HS2 to be precise to J180) from the hardware manager, Pynq on the console throws the following messages, and stops responding:

The error can be reproduced most of the time; it may take a few minutes to exhibit the error, sometimes when triggering ILA on a custom firmware build, others just accessing the JTAG port such as Sysmon. We have two ZCU104 that do the same thing and will try on a third one. I’ve seen reports pointing to kernel configuration, patches, etc. but nothing looked relevant enough.

Any pointers where to continue looking will be greatly appreciated.

Thanks,
-Pat

I think this is a known issue. For debug, you need to disable cpuidle
Try the solution here:

This will result in the CPU clock running at full speed constantly. When you are finished debug, you probably want to turn this off for lower power. This is why this setting is turned ‘on’ by default.

Cathal

1 Like

@cathalmccabe

Great, there is hope. I will test this tomorrow and report back (midnight here).

Thanks!
-Pat

@cathalmccabe

Adding the attached file to the root directory of the SD card, fixes this issue as far as I can test.

Thanks again! You saved the day.
-Pat

uEnv.txt (154 Bytes)

1 Like

Remember to use this just for debugging. Preventing the CPU to go idle will heavily impact energy consumption. This is the reason why we don’t enable it by default.

3 Likes