This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Office Hours for Getting Hands-On: Linux GDB debugger on TI's OMAP/DaVinci platforms

Other Parts Discussed in Thread: OMAP-L137

Those whom are here for office hours for Getting Hands-On: Linux GDB debugger on TI's OMAP/DaVinci platforms please feel free to join the IRC channel #etechdays on Freenode. Juan and I will be in there until 2pm central to help out with any questions in real time. Any good q&a that happens there will be posted back to the forums.

step 1: go to http://webchat.freenode.net/?channels=etechdays
step 2: put in a Nickname you wish to be known as, try something obscure to ensure you do not conflict with another user on Freenode
step 3: click connect

If all goes well and your browser has the proper java support you should be in the etechdays room on freenode, just type in the box at the bottom to put in text, note this is the same service used by various open projects such as Beagle.

  • (1:04:37 PM) Ramsey_: Hello, When gdb stops at a breakpoint, how to I move up and down the stack to look at source code? How do I return from a given stack frame? Thanks.
    (1:04:52 PM) Guest78740 left the room (quit: Client Quit).
    (1:05:43 PM) BThompson: so you are using pure gdb or do you mean from ddd?
    (1:06:15 PM) Ramsey_: Pure gdb I guess, I don't know what ddd is.
    (1:07:15 PM) BThompson: ddd is the gui front end for gdb, gdb itself you just have command line commands, were looking into what command you would use
    (1:08:01 PM) Ramsey_: Okay, pure gdb then. I'm either on the serial port or I telnet into my development board.
    (1:10:05 PM) BThompson: you can still use ddd from over the network, the gui runs on the host machine and makes things like looking around source easier ;)
    (1:10:10 PM) BThompson: i think juan may have a command for you
    (1:10:14 PM) JuanG_TIer left the room (quit: Ping timeout: 180 seconds).
    (1:10:49 PM) BThompson: hes having connection problems...
    (1:10:56 PM) BThompson: http://www.yolinux.com/TUTORIALS/GDB-Commands.html the up and down commands from there should do it
    (1:11:28 PM) Ramsey_: Interesting, what services do I need running on my development board?
    (1:12:01 PM) JuanG_Tier [i=c05b4b1e@gateway/web/freenode/x-fxyxaaqspugejksr] entered the room.
    (1:12:17 PM) JuanG_Tier: HI Ramsey, lost connection there for a while
    (1:12:26 PM) BThompson: gdbserver is all you should need on the board
    (1:12:35 PM) JuanG_Tier: I bleive the commands you are looking for are 'up' and 'dpwn'
    (1:12:46 PM) JuanG_Tier: typo, 'down;
    (1:13:16 PM) JuanG_Tier: you can see the following link for a tutorial of basic gdb commands http://www.yolinux.com/TUTORIALS/GDB-Commands.html
    (1:13:32 PM) Ramsey_: Thanks for the link, I've tried up and down but with little success. I'll give it another try.
    (1:13:40 PM) TripleBees [i=62d4adfc@gateway/web/freenode/x-zxhmtlfozyzffjty] entered the room.
    (1:13:49 PM) BThompson: id suggest using DDD like the video has
    (1:13:57 PM) BThompson: its much easier to use for debugging than gdb itself
    (1:14:16 PM) BThompson: assuming you have some preference for graphical debugging
    (1:14:57 PM) Ramsey_: How does ddd connect to gdbserver? I'm guessing with some network protocol. My simulator has only serial port support. Can I used it there?
    (1:15:16 PM) BThompson: ddd sits on top of gdb and gives it commands, so if gdb works than ddd will work
    (1:16:09 PM) JuanG_Tier: yes, ddd actually runs on top of gdb
    (1:16:28 PM) JuanG_Tier: so you can use serial port or ethernet, just like you would for gdb
    (1:17:00 PM) JuanG_Tier: actually many fancy Linux IDEs run on top of gdb
    (1:18:07 PM) Ramsey_: I don't seem to have ddd on my Windows box. Can I get it from somewhere? How about using CCS to debug my ARM side app?
    (1:18:37 PM) JuanG_TIer_ [i=c05b4b1e@gateway/web/freenode/x-rsnlcwzzrzvljnea] entered the room.
    (1:19:30 PM) BThompson: ddd and gdb are generally Linux tools, and would be used to debug a linux application from a linux host pc
    (1:19:43 PM) Ramsey_: Okay, thanks.
    (1:19:55 PM) BThompson: CCS is not really usable to debug Linux arm apps outside of OMAP3 and CCSv4
    (1:20:00 PM) BThompson: theres a wiki article on this, lemme see
    (1:20:01 PM) JuanG_Tier left the room (quit: Ping timeout: 180 seconds).
    (1:20:45 PM) BThompson: here http://wiki.davincidsp.com/index.php/Linux_Aware_Debug
    (1:21:42 PM) BThompson: this is all kind of assuming you have Linux runinng on the target though, if you are using something else things may be different ;)
    (1:21:53 PM) Ramsey_: Thanks for the link. I'll give it a study.
    (1:23:30 PM) dudeinamonkeysui [i=c05b4b1d@gateway/web/freenode/x-wzpsnpzmhiwauevw] entered the room.
    (1:24:00 PM) JuanG_TIer_: another link you may find helpful is http://wiki.davincidsp.com/index.php/Linux_Debugging_Overview
    (1:24:44 PM) JuanG_TIer_: just to give you options on the various debuggung tools and what stage of the process they are appropriate for
    (1:25:19 PM) Ramsey_: Thanks.
    (1:31:29 PM) dudeinamonkeysui: Hello, I just downloaded the latest DVSDK for my DM6446 EVM and it does not seem to have a gdbserver in it?
    (1:33:04 PM) JuanG_TIer_: due to GPL licensing issues with newer kernels, all releases based on MV Pro 5 or newer will not include gdb by defualt
    (1:34:10 PM) BThompson: i think theres a wiki article that explains how to rebuild it, Juan is digging it up now
    (1:34:42 PM) JuanG_TIer_: there is a link available to show you how to download and build gdb at http://wiki.davincidsp.com/index.php?title=Debugging_Linux_Application_on_OMAP-L_137
    (1:35:04 PM) dudeinamonkeysui: thanks, I will take a look
    (1:35:25 PM) JuanG_TIer_: it was written for OMAP-l137 but applies to all DaVinci / OMAP MV Pro 5 based DVSDKs
    (1:39:10 PM) dudeinamonkeysui: so is using gdbserver and gdb like this the easiest way to debug a Linux app on the arm or are there other suggested tools?
    (1:39:24 PM) fossmar [i=4090b18e@gateway/web/freenode/x-xvlvdzldaojnyxup] entered the room.
    (1:39:56 PM) BThompson: gdb and ddd are free and fairly easy to use, there are other options though
    (1:39:57 PM) JuanG_TIer_: well, I would not say is the easiest way to debug, but they are free open source tools
    (1:41:25 PM) BThompson: you could use eclipse on top of gdb but I believe that is harder to setup than ddd, I have not tried it myself... then there are various paid options like MVL DevRocket or GreenHills Multi
    (1:41:46 PM) dudeinamonkeysui: cool I will give this ddd a shot to start
    (1:42:28 PM) JuanG_TIer_: FYI, Green Hills MULTI IDE also runs on windows
    (1:42:45 PM) JuanG_TIer_: and supports DSP development debugging
    (1:42:55 PM) RobertSignum [i=62705541@gateway/web/freenode/x-kyiubxkkrhoiavwd] entered the room.
    (1:44:21 PM) JuanG_TIer_: FYI, for those that just arrived, we will post an archive of our discussions thus far on the forums...
    (1:45:48 PM) RobertSignum left the room (quit: Client Quit).
    (1:45:55 PM) JuanG_TIer [i=c05b4b1e@gateway/web/freenode/x-ombnifcbbqratxxp] entered the room.
    (1:47:07 PM) JuanG_TIer: does anyone else have any OMAP/DaVinci related questions, even outside of gdb, we may be able to help with
    (1:47:21 PM) JuanG_TIer_ left the room (quit: Ping timeout: 180 seconds).
    (1:48:15 PM) fossmar: Can you tell me where a good place to start would be for learning to use DSP Link on an OMAPL-137 evm?
    (1:48:44 PM) BThompson: I think there is a good wiki article for that
    (1:49:13 PM) David_TIer: there's a HelloDSP example for DSPLINK on L137 here http://wiki.davincidsp.com/index.php/CCS_Project_OMAP-L137_HelloDSP_DSPLINK_example
    (1:49:52 PM) fossmar: Thanks I'll check that out.
    (1:50:48 PM) David_TIer: there's also a wiki on debugging a DSPLink application here http://wiki.davincidsp.com/index.php/Debugging_the_DSP_side_of_a_DSPLink_application_on_OMAP-L137_using_CCS
    (1:52:18 PM) BThompson: so what sort of DSP Link usage do you have in mind? just a thought if you wanted to use a xdais standard algorithm or codec than Codec Engine may be an alternative
    (1:53:06 PM) fossmar: We have a custom algorithm on the DSP side and use the ARM side for I/O handling
    (1:53:51 PM) BThompson: sounds like a fine fit for DSP Link assuming you don't want to get into xdais :)
    (1:54:21 PM) CartikSharma [i=44372804@gateway/web/freenode/x-ewukgvryhnuuctyf] entered the room.
    (1:54:26 PM) CartikSharma: hi
    (1:54:29 PM) BThompson: hello
    (1:54:39 PM) CartikSharma: How are you?
    (1:54:59 PM) BThompson: not bad :)
    (1:55:00 PM) CartikSharma: Is there a webinar on Linux gdb
    (1:55:04 PM) CartikSharma: :)
    (1:55:19 PM) BThompson: there is an on demand video
    (1:55:38 PM) BThompson: http://focus.ti.com/docs/training/catalog/events/event.jhtml?sku=OLT109103 should get you there
    (1:55:48 PM) CartikSharma: thanks!
    (1:55:51 PM) BThompson: at least that was the basis for setting up this particular office hour
    (1:55:53 PM) CartikSharma: are you at TI?
    (1:56:08 PM) BThompson: if you have already done basic board setup with TFTP/NFS than you can probably skip half way through it
    (1:56:09 PM) BThompson: yes
    (1:56:18 PM) Ramsey_ left the room (quit: "Page closed").
    (1:56:41 PM) CartikSharma: ah
    (1:56:42 PM) fossmar: Do you have any tips/tricks for debugging DSP/ARM applications concurrently since the DSP side is hardware based debugger and the ARM side is a software based debugger?
    (1:57:19 PM) JuanG_TIer: This was the Q&A session for the on demand link Bernie just sent, but we are entertaining general OMAP/DaVinci questions as well
    (1:58:58 PM) JuanG_TIer: so you have many tool choices on ARM side, (open source ddd, DevRocket, GHS MULTI... just to name a few), and on DSP side you have CCS and GHS MULTI
    (1:59:25 PM) JuanG_TIer: if you want to debug both simultaneously in the same IDE, MULTI would be a good choice
    (1:59:31 PM) fossmar: I'll probably use open source ddd on ARM side and CCs on DSP side
    (1:59:58 PM) BThompson: though not specific to dsp link http://wiki.davincidsp.com/index.php/Debugging_the_DSP_side_of_a_CE_application_on_DaVinci_using_CCS might be of some help
    (2:00:11 PM) BThompson: its not really 'concurrent
    (2:00:22 PM) BThompson: but it allows you to debug dsp code loaded by arm
    (2:01:04 PM) fossmar: is there a a way of passing through "breakpoints" from one side to the other?
    (2:02:03 PM) BThompson: not really that I am aware of, you kind of have to have both debugging independently, even if you do so at the same time
    (2:02:21 PM) David_TIer left the room (quit: Remote closed the connection).
    (2:02:25 PM) JuanG_TIer left the room (quit: Ping timeout: 180 seconds).
    (2:03:50 PM) CartikSharma: TI is extremely gracious in hosting this event
    (2:04:21 PM) JuanG_TIer [i=c05b4b1e@gateway/web/freenode/x-uqxaftakegocmive] entered the room.
    (2:04:33 PM) BThompson: thank you all for stopping by, I have to head to another meeting, but I will check the log of this later and publish the logs on the forum