Linux Aware Debugging for BeagleBoard

I would like to share what I learned about BeagleBoard Linux Aware Debugging that might be helpful to the BeagleBoard community working on device drivers or low level Kernel code. I know that most kernel gurus are more than happy with printk statements, but for me, I wanted something more interactive that allowed me to step through kernel code, set breakpoints, inspect variables, etc. My preference was that the debugging tool should run in Linux as that is where I’m compiling my kernel/drivers.

I tried several JTAG emulators, some working only in Windows, others working in Linux, but to my surprise, none worked with the OMAP3530 reliably. Horror, I had a project to complete and I didn’t have the tools I need to get my work done.

For the last several months, I worked with the people from Ronetix to get their PEEDI emulator to work with the BeagleBoard. I can now report that their latest PEEDI firmware V9.8.216 or later works great with the BeagleBoard. PEEDI uses the Insight GDB debugger and the performance is impressive. Stepping through code, debugging both kernel and user space application are all possible. It is even possible to set breakpoints in Interrupt routines and then stepping through the Interrupt routine code.

I am really impressed with the Ronetix support guys. I wanted a kernel thread list, which is really helpful in a multithreaded application to help track down racing conditions or lock conflicts. I asked the support guys and in just over a week, they added this feature for me. I reported what I thought were bugs, and these guys got them fixed in days.

Anyway, I have added a section to the BeagleBoard JTAG wiki for anyone wanting to use PEEDI for Linux Aware Debugging.

http://elinux.org/BeagleBoardJTAG#PEEDI

I hope this info will be helpful to the BeagleBoard community

Kind Regards,

John

I still have a couple of openings at the Lightning Talks [1] and that
might be a good place to get some exposure to this and spark some
discussion on debugging tools. Ideally, I'd rather hear about
somewhat more community oriented projects like OpenOCD, but I'm
interested in anything that helps community developers and spurs good
conversation.

[1] http://wiki.omap.com/index.php/ETechDays_Community_Lightning_Talks

From: beagleboard@googlegroups.com
[mailto:beagleboard@googlegroups.com] On Behalf Of Jason Kridner
Sent: Wednesday, August 26, 2009 1:50 PM
To: beagleboard@googlegroups.com
Subject: [beagleboard] Re: Linux Aware Debugging for BeagleBoard

>
>
> Anyway, I have added a section to the BeagleBoard JTAG wiki for anyone
> wanting to use PEEDI for Linux Aware Debugging.
>
> BeagleBoardJTAG - eLinux.org
>
>
>
> I hope this info will be helpful to the BeagleBoard community
>

I still have a couple of openings at the Lightning Talks [1] and that
might be a good place to get some exposure to this and spark some
discussion on debugging tools. Ideally, I'd rather hear about
somewhat more community oriented projects like OpenOCD, but I'm
interested in anything that helps community developers and spurs good
conversation.

Unfortunately, I won't have the time to prepare a presentation and a speech
at such short notice. You know what they say, If I had an unlimited amount
of time to speak, I could prepare a speech in a minute, but a 5 to 10 minute
speech will take hours to prepare.

Anyway, I have also updated the BeagleBoard JTAG wiki for the TI CCSV4 JTAG
debugger. I worked with the TI CCSV4 support guys out of Toronto for the
last several months to support Linux Kernel aware debugging for the
BeagleBoard and CCSV4 is now a very nice solution.
http://elinux.org/BeagleBoardJTAG#XDS100.2C_XDS510.2C_USB560_and_CCSV4