cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
hejale
Observer
Observer
1,027 Views
Registered: ‎02-12-2018

Debugger stops at each interrupt

Jump to solution
Hi I'm using the tcf agent with SDK 2018.2 on windows to load and debug a simple linux application over ethernet. It works well without interrupts but when I add an interrupt to the application (e.g. timer interrupt), SKD always stops after the interrupt. This makes it impossible to debug. How can I turn this behaviour off? Best regards Heja
0 Kudos
1 Solution

Accepted Solutions
hejale
Observer
Observer
947 Views
Registered: ‎02-12-2018

Hi

I found what I was looking for, I write it if somebody else is having the same question.

SDK can be instructed not stop on interrupts as follows:

Debug View:

1) Right-Click on the elf file: AppName.elf

2) Choose Signals

3) Mark Don't Stop for the used Interrupt

View solution in original post

0 Kudos
3 Replies
ibaie
Xilinx Employee
Xilinx Employee
978 Views
Registered: ‎10-06-2016

Hi @hejale

When you say you are using TCF agent does it mean that you selected the "Target Communication Framework" debug type in the debug configuration wizard? We always recomend to use System Debugger option and then select the Linux application debug type.

You are mentioning that you are debugging a Linux application so where does the debugger stop on the interrupt? I mean, interrupts in Linux are handled by the kernel rather than userspace so not sure if I'm understanding the issue.

Regards


Ibai
Don’t forget to reply, kudo, and accept as solution.
0 Kudos
hejale
Observer
Observer
957 Views
Registered: ‎02-12-2018

Hello Ibai

Thank you for your reply.

I'm using System Debugger with Linux Application Debug as "Debug Type". On the target I run the tcf-agent.

The debugger stops anywhere in the code, maybe wherever it was when the interrupt occured. At this point, if I try to step, I get the attached error ("Cannot step..") but I can resume and the program runs until the next interrupt occurs.

Everything works fine when I disable the timer interrupt and instead poll the timer.

Basically I copied the code for the timer from this page:

http://man7.org/linux/man-pages/man2/timer_create.2.html

The application (C++) is statically linked and has following additional linker flags for timer_create: -lrt -lpthread

Best regards

heja

SDK_Linux_Debug_Interrupt.png
0 Kudos
hejale
Observer
Observer
948 Views
Registered: ‎02-12-2018

Hi

I found what I was looking for, I write it if somebody else is having the same question.

SDK can be instructed not stop on interrupts as follows:

Debug View:

1) Right-Click on the elf file: AppName.elf

2) Choose Signals

3) Mark Don't Stop for the used Interrupt

View solution in original post

0 Kudos