UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Scholar ronnywebers
Scholar
297 Views
Registered: ‎10-10-2014

SmartLynq with SDK : does not stop at main, failed to plant a breakpoint, does not show source code when halted

Jump to solution

I"m using my brand new SmartLynq JTAG probe, and trying to debug bare metal code in SDK (2018.2)

I created a simple 'hello world application' for my Zynq device, that I modified slightly so it outputs 'hello world' on PS UART1 each second, in an endless loop.

I can program the bitstream, so my SmartLynq probe works fine and is connected to the target.

However when I want to (source level) debug my code through system debugger, the following 3 issues occur :

1) my application immediately starts running, instead of halting in 'main', although I set this checkbox 'Stop at main' in my debug configuration. Note that my application properly works, it says hello-world eery second on the serial port.

stop at main.png

despit this, my application just starts running:

Screenshot 2019-07-29 at 15.31.45.png

2) I cannot put a breakpoint anywhere in my code, if I double click to set a breakpoint, I get the message: failed to plant: Unresolved source line information

Screenshot from 2019-07-29 15-28-08.png

3) if I hit the 'pause button in the debugger, I just get a 'Disassembly' window, without any source code info in it, and a call-stack without any function name next to it :

Screenshot 2019-07-29 at 15.32.58.png

so SDK seems to have no symbol information ... however right-clicking on the A9 MPCore #0 -> Symbol files shows  that the .elf file is known by SDK:

Screenshot 2019-07-29 at 16.14.33.png

4) If I switch back to my Digilent HS2 or HS3 USB jtag debugger, everything works just fine ...

** kudo if the answer was helpful. Accept as solution if your question is answered **
0 Kudos
1 Solution

Accepted Solutions
Scholar ronnywebers
Scholar
292 Views
Registered: ‎10-10-2014

Re: SmartLynq with SDK : does not stop at main, failed to plant a breakpoint, does not show source code when halted

Jump to solution

After 2 days of searching in all kinds of wrong directions, for example here   (long story, but during the process I was also create a new VM, used the SmartLynq for the first time, I was also testing my git version control system and build script and thought the issue came from there, my original project debugged just fine, but my recreated project did not  ... see this related post)

 I finally fixed this issue... 

The SmartLynq manual nowhere mentions that you should turn on that small checkbox when connecting to the target: 'use symbol server'

Once you think of it, it sounds of course very logical : the SmartLynq is considered a remote debugger, vs. for example a USB JTAG debugger, which it considers to be a local debugger ... but I simply looked over this a few times, I just 'replaced' my USB JTAG probe with an ethernet connected JTAG probe on my local desk, so who cares about symbol servers when remote debugging :-)

It would have been great if this was mentioned in the user manual ..., so I'm posting it here in case anyone runs into the same issue :

SmartLynq symbol server.png

** kudo if the answer was helpful. Accept as solution if your question is answered **
3 Replies
Scholar ronnywebers
Scholar
293 Views
Registered: ‎10-10-2014

Re: SmartLynq with SDK : does not stop at main, failed to plant a breakpoint, does not show source code when halted

Jump to solution

After 2 days of searching in all kinds of wrong directions, for example here   (long story, but during the process I was also create a new VM, used the SmartLynq for the first time, I was also testing my git version control system and build script and thought the issue came from there, my original project debugged just fine, but my recreated project did not  ... see this related post)

 I finally fixed this issue... 

The SmartLynq manual nowhere mentions that you should turn on that small checkbox when connecting to the target: 'use symbol server'

Once you think of it, it sounds of course very logical : the SmartLynq is considered a remote debugger, vs. for example a USB JTAG debugger, which it considers to be a local debugger ... but I simply looked over this a few times, I just 'replaced' my USB JTAG probe with an ethernet connected JTAG probe on my local desk, so who cares about symbol servers when remote debugging :-)

It would have been great if this was mentioned in the user manual ..., so I'm posting it here in case anyone runs into the same issue :

SmartLynq symbol server.png

** kudo if the answer was helpful. Accept as solution if your question is answered **
Scholar ronnywebers
Scholar
278 Views
Registered: ‎10-10-2014

Re: SmartLynq with SDK : does not stop at main, failed to plant a breakpoint, does not show source code when halted

Jump to solution

so please Xilinx, add this to the manual ... or even better, turn this on automatically if you enter an IP address / remote debugger ...

** kudo if the answer was helpful. Accept as solution if your question is answered **
0 Kudos
Scholar ronnywebers
Scholar
127 Views
Registered: ‎10-10-2014

Re: SmartLynq with SDK : does not stop at main, failed to plant a breakpoint, does not show source code when halted

Jump to solution

Xilinx has created AR# 64759 SDK - How to debug a remote target to answer my initial question

Another interesting one to look at if you have SmartLynq issues is AR# 69590 - SmartLynq Data Cable Master Answer Record

** kudo if the answer was helpful. Accept as solution if your question is answered **