• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Development Tools » Code Composer Studio » Code Composer Forum » OMAPL138 and dsplink debugging problem
Share
Code Composer Studio
  • Forum
  • Announcements
Options
  • Subscribe via RSS
Common Questions
  • Code Composer Studio Forum Usage Guidelines

  • Resources
  • Code Composer Studio (CCStudio) Product Folder
  • Troubleshooting CCS
  • CCS Wiki
  • Download CCS
  • Order CCS
  • Tools Insider Blog
  • Bug Tracking
  • OMAPL138 and dsplink debugging problem

    OMAPL138 and dsplink debugging problem

    • Richard Bagdazian
      Posted by Richard Bagdazian
      on Jul 23 2010 11:17 AM
      Intellectual630 points

      I am currently running the dsplink message app on an OMAPL138 based processor running the Angstrom Linux distribution.

      The message app works exactly as desired when invoked from the linux command line.

      I wanted to use gdbserver and eclipse to perform arm side debugging and have found a problem which I need some assistance on.

      Debugging works fine and I can step through the message application code and set breakpoints inside of Eclipse until I reach the initial call to PROC_attach();

      If I set a breakpoint to the statement immediately after the call to PROC_attach() as shown in the snippet below, the processor appears to stop, but Eclipse does not get control and I'm unable to issue any further debugging commands. As I said everything appears to be fine and breakpoints and single stepping work fine up until the point that the call to PROC_attach is made.

      .
      .
      .
         if (DSP_SUCCEEDED (status)) {
              status = PROC_attach (processorId, NULL) ;
              if (DSP_FAILED (status)) {                 // <----------   breakpoint set here, never returns
                  MESSAGE_1Print ("PROC_attach () failed. Status = [0x%x]\n",
                                  status) ;
              }

       

      Thanks

      Rich Bagdazian

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Deepali Uppal
      Posted by Deepali Uppal
      on Jul 27 2010 03:15 AM
      Expert4930 points

      Rich,

      Which DSPLink release are you on?

      There was a defect in the semaphore implementation in DSPLink code. Signal handling was incorrect which led to hang seen while debugging using gdb. I have not tried debugging with eclipse.

      The patch release was made over DSPLink release 1.63. this patch release is 1.63.01 and can be downloaded from http://software-dl.ti.com/dsps/dsps_registered_sw/sdo_sb/targetcontent/link/link_1_60/index.html

      The changes should be easy to intregrate in the DSPLink version that you have. You will need to rebuild DSPLink, your application and re-try.

      Please try this and let me know.

      Deepali

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Richard Bagdazian
      Posted by Richard Bagdazian
      on Jul 27 2010 14:40 PM
      Intellectual630 points

      Hi Deepali,

       

      I'm using DSPLINK version 1.64 with the angstrom based distribution.

       

      -Richard

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Richard Bagdazian
      Posted by Richard Bagdazian
      on Jul 27 2010 14:42 PM
      Intellectual630 points

      I also used a debug build of dsplink and stepped through the dsplink code to find out where my hangup was taking place and it appears that inside of Notify_init there is a call to pthread_create which is where the system hangs up when I try to step over the thread creation statement.

       

      -Richard

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Deepali Uppal
      Posted by Deepali Uppal
      on Aug 02 2010 13:28 PM
      Expert4930 points

      Richard,

      Do you see this in a simple test case which calls pthread_create (outside of DSPLink)?

      This does seem to me a problem at a more fundamental level. i.e. some feature/fix missing in gdb/threading library support.

      Deepali

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • C. Alonso
      Posted by C. Alonso
      on Sep 23 2010 10:46 AM
      Prodigy235 points

      I've got exactly the same problem, did you finally find a solution for it?

      César

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Richard Bagdazian
      Posted by Richard Bagdazian
      on Sep 24 2010 19:01 PM
      Intellectual630 points

      Hi César,

      Unfortunately no, I had to move on to other more pressing matters.

      -Richard

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Deepali Uppal
      Posted by Deepali Uppal
      on Sep 27 2010 05:28 AM
      Expert4930 points

      Rich/Cesar,

      Please look at the bug fix available in 1.63.01.

      There was a defect in the semaphore implementation in DSPLink code. Signal handling was incorrect which led to hang seen while debugging using gdb.

      The patch release was made over DSPLink release 1.63. this patch release is 1.63.01 and can be downloaded from http://software-dl.ti.com/dsps/dsps_registered_sw/sdo_sb/targetcontent/link/link_1_60/index.html

      The changes should be easy to intregrate in the DSPLink version that you have. You will need to rebuild DSPLink, your application and re-try.

      Please try this and let me know.

      Deepali

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • C. Alonso
      Posted by C. Alonso
      on Sep 29 2010 09:42 AM
      Prodigy235 points

      Finally I could solve the problem! My plattform is Davinci dm6467, and I was using dsplink 1.64, so following Deepali's suggestion I downloaded and installed the lastest version available of dsplink for my plattform (dsplink 1.65.00.03) and everything works ok now!

      Whatever the problem was with dsplink 1.64, it seems to be fixed on the next version :)

      Thanks Richard and Deepali for your answers,

      César

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Daniel Ferm
      Posted by Daniel Ferm
      on Oct 22 2010 07:55 AM
      Prodigy100 points

      We have been struggling with a similar problem for a long time with our multi-threaded application using dsplink on a custom OMAPL138 board.

      When a SIGFPE signal was caused by a division by zero in one thread (not working using dsplink) while another was in a dsplink MSGQ_get function our debugger (eclipse using gdb / gdbserver) never received the signal. This caused our failing thread to silently die while the thread working with dsplink continued working like nothing happend.

      Moving from dsplink 1.65.00.02 to 1.65.00.03 solved the problem! Now we receive the signal and can debug the problem properly.

      Hope this information can help someone else the headache we've been having in trying to guess the problem.

      Best regards,

      Daniel

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Deepali Uppal
      Posted by Deepali Uppal
      on Oct 26 2010 00:15 AM
      Expert4930 points

      Daniel,

      Thanks for the update.

      The same bug has been fixed in 1.65.00.03 as well.

      Deepali

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Mushtaq Syed
      Posted by Mushtaq Syed
      on Apr 02 2012 20:19 PM
      Intellectual785 points

      Hi Deepali:

      Could you please point me to documentation for DSPLINK that will help me figure out how to use DSPLINK on the OMAPL138 under CCSv5?

      I have SYS/BIOS included in my project. However, I don't see DSPLINK in SYS/BIOS or in CCSv5.

      How do I go about including DSPLINK for passing messages and data between the ARM and DSP.

      Simple example code to accomplish the above would be very helpful.

      Thanks a lot!

      Cheers,

      Mushtaq

      DSPLINK_OMAPL138_CCSv5
      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    TI E2E™ Community
    • Support Forums
    • Blogs
    • Videos
    • Groups
    • Site Support & Feedback
    • Settings
    TI E2E™ Community Groups
    • TI University Program
    • Make the Switch
    • Microcontroller Projects
    • Motor Drive & Control
    Other Communities
    • Deyisupport
    • Designsomething.org
    • beagleboard.org
    • TI on Element 14
    • TI on TechXchangeSM
    Other Technical & Support Resources
    • WEBENCH® Design Center
    • Product Information Centers
    • Technical Documents
    • TI Design Network
    • TI Technical Articles
    • TI Training

    All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

    Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

    Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
    TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

    TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
    embedded processors, along with software, tools and the industry’s largest sales/support staff.

    © Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
    Trademarks | Privacy Policy | Terms of Use