I have multiple devices in my JTAG chain that I want to debug.
However, if I open the Debug configurations for the System Debugger, I cannot select my other devices.
How can I work around this?
This is a known issue with the system debugger.
You can use the GDB debugger, or use the steps below to work around this issue with the system debugger:
Open the XSDB command console in SDK and use the command below:
To download the bitstream, select the target.
For example, I will select the 2nd Zynq device (9)
For Zynq devices, the Processor Sub-system will need to be initialized.
This can be done using an FSBL ELF, or using the ps7_init.tcl file in the Hardware Platform.
Next, download the executable ELF file
Next, set up the Debug Configurations:
Double Click on the Xilinx C/C++ application (System Debugger) to create a debug configuration.
In the Target Setup tab, set the Debug Type to "Attach to running target"
Select Debug to continue.
This will open the Debug perspective. Next, we want to add the symbol file:
To add the symbol file, right click on the ARM Cortex A0 MPCore #0 (note, this is target 7),
and select Add Symbol File.
In the Symbol File GUI, select Add, and point to your ELF file.
To test, we can set a breakpoint at the main:
Alternatively, you can add the breakpoint using the GUI as the Symbol file is added.
You can now Resume in the SDK GUI, and use the step into, over, etc..
Once you are finished, you can reset by doing the following:
This can be repeated on another device in the chain.