• 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 » Digital Signal Processors (DSP) » OMAP™ Processors » OMAP-L13x, AM1x and C674x Processors Forum » NDK/NSP problems with OMAP-L138
Share
OMAP™ Processors
  • Forums
  • Announcements
Options
  • Subscribe via RSS
Resources
  • OMAP-L1x DSP+ARM9™-based Processors Product Folder
  • OMAP3525/30 DSP+ARM Cortex™-A8-based SOCs Product Folder

  • Top OMAPL Wiki Links
  • OMAPL3x Schematic Review Checklist
  • OMAPL13x Boot resources

  • OMAPL Document Resources
  • OMAPL137 Technical reference manual
  • OMAPL138 Technical reference manual
  • OMAPL Boot loader App Notes
  • NDK/NSP problems with OMAP-L138

    NDK/NSP problems with OMAP-L138

    This question is answered
    DT
    Posted by DT
    on Dec 21 2011 14:25 PM
    Intellectual510 points

    Hi,

    I'm using the following:

    - CCSv5.1.0.09

    - OMAP-L138 EVM (Logic PD) (OMAP SOM connected on the baseboard, no utility board)

    - Lastest GEL files (given to me by Alan from the BIOS forum)

    - XDS100v2

    - NDK 2.20.05.33

    - NSP 1.00.00.09

     

    I imported the ARM projects into CCS. I had to change the NSP, NDK and BIOS versions of the projects to use the latest I installed. I also had to change the RTSC target. Now, my projects compile. There are 3 problems:

    - After a power-up, everytime I try to debug a NDK project, the launching hangs and I have to cancel. After that, I can launch a debug session. I've opened a thread in the BIOS forum, but still wanted to mention it here just in case people have solutions.

    http://e2e.ti.com/support/embedded/bios/f/355/t/154290.aspx#559038

    - I tried to run both the HelloWorld and the Client examples and the output looks like this:


    [ARM9_0] Using default MAC address 

    [ARM9_0] Using MAC Address: 00-08-ee-03-14-99 

    [ARM9_0] MAC Address = 00-08-ee-03-14-99 

    [ARM9_0] EMAC should be up and running 

    [ARM9_0] EMAC has been started successfully 

    [ARM9_0] Registeration of the EMAC Successful 

     

    It never goes more far than this. There seems to be a problem, since I don't get any IP address or DHCP feedback at all and according to the doc, I should. I also checked on the server DHCP list and the board is not present in the leased addresses. 

     

    Also, from time to time, it hangs even before this:

     

    [ARM9_0] Using default MAC address 

    [ARM9_0] Using MAC Address: 00-08-ee-03-14-99 

    [ARM9_0] MAC Address = 00-08-ee-03-14-99 

     

    My ethernet cable is connected to a switch. Both LEDs are ON on the connector, no flashing at all.

    Any idea please???

    Best regards,

    DT

     

     

     

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    All Replies
    • DT
      Posted by DT
      on Dec 21 2011 15:05 PM
      Intellectual510 points

      I've just tested the "ndk_evm6748_bios6_helloWorld" example and it works:

      [C674X_0] Using default MAC address 

      [C674X_0] Using MAC Address: 00-08-ee-03-14-99 

      [C674X_0] MAC Address = 00-08-ee-03-14-99 

      [C674X_0] EMAC should be up and running 

      [C674X_0] EMAC has been started successfully 

      [C674X_0] Registeration of the EMAC Successful 

      [C674X_0] Service Status: DHCPC    : Enabled  :          : 000 

      [C674X_0] Service Status: DHCPC    : Enabled  : Running  : 000 

      [C674X_0] Link Status: 100Mb/s Full Duplex on PHY 0 

      [C674X_0] Network Added: If-1:192.168.0.62 

      [C674X_0] Service Status: DHCPC    : Enabled  : Running  : 017 

       

      I had to change the GEL file though, because it was not even booting (I was using the OMAP_DSP file, and changed it to the C6748 one). That puzzles me. Why the OMAP DSP gel file doesn't boot???

      Anyway, that confirms I don't have an hardware problem. So now, why my ARM example doesn't work????

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • DT
      Posted by DT
      on Dec 21 2011 16:15 PM
      Intellectual510 points

      I went back on trying the ARM examples, without changing a single thing, now I get there:

      [ARM9_0] Using default MAC address 

      [ARM9_0] Using MAC Address: 00-08-ee-03-14-99 

      [ARM9_0] MAC Address = 00-08-ee-03-14-99 

      [ARM9_0] EMAC should be up and running 

      [ARM9_0] EMAC has been started successfully 

      [ARM9_0] Registeration of the EMAC Successful 

      [ARM9_0] Service Status: DHCPC    : Enabled  :          : 000 

       

      [ARM9_0] Service Status: DHCPC    : Enabled  : Running  : 000 

       

      It still hangs. What is going on, I haven't changed a single thing! 

       

      EDIT: I powered off the board and tried again and back to square one, it hangs at [ARM9_0] Registeration of the EMAC Successful 

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • DT
      Posted by DT
      on Dec 22 2011 09:32 AM
      Intellectual510 points

      I did some test again, still no luck. The ARM side is always stalling after the EMAC init, like mentioned in original post of this thread. Some notes I wanted to add:


      - I'm using TI OMAP GEL files provided by Alan DeMars, for both the DSP and the ARM;

      - The printf() shown in the Console appears MUCH faster when I load the DSP application than when I load the ARM. It really feels like the ARM is a turtle compared to the DSP being a rabbit when printing (and probably executing) the EMAC initialization. Is that a bad sign or is it normal?

       

       

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • DT
      Posted by DT
      on Dec 22 2011 14:40 PM
      Intellectual510 points

      anybody has an idea of what I could try? Am I the only one having problems running the examples on the ARM? Until I resolve this, I can't really design the application on the ARM...

      DT

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • DT
      Posted by DT
      on Dec 23 2011 11:14 AM
      Verified Answer
      Verified by DT
      Intellectual510 points

      I found the problem. Actually, I found the answer:

      http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/111915.aspx#396317

       

      My XDS100v2 was updated, my clock was adaptative, but my BOOT mode was not on the EMU Debug choice. All switches were OFF. This made the Task Example work fine. The printing in the console is still really slower when coming from the ARM (the DSP side is really quick, same clocks). But at least it doesn't hang. Hope this time it is the real reason! :)

      But that creates a question: what is exactly the EMU Debug BOOT mode? On our own custom board, I was planing on booting from SPI Flash. Must I add this BOOT mode too to be able to test and debug the board?? Why was it not running properly (only on the ARM) with all the DIP switches to OFF (so SPI Flash boot mode)?

       

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • David Friedland
      Posted by David Friedland
      on Dec 29 2011 15:11 PM
      Genius13480 points

      DT,

      I have moved this thread over to the OMAP-Lxx forum in hopes that your question about boot mode will get answered more quickly there.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Mukul Bhatnagar
      Posted by Mukul Bhatnagar
      on Dec 29 2011 15:50 PM
      Mastermind24640 points

      Hi DT

      I see that David has moved a couple of threads from you from the BIOS forum to the device forum. 
      I do think the issue you at hand is resolved if you were to use emulation boot mode, as it is in this boot mode both ARM and DSP are left enabled by default and spinning in a while 1 loop making CCS based debug easier

      The emulation boot is documented both in the bootloader application note, and a brief description is provided in the following wiki

      http://processors.wiki.ti.com/index.php/OMAP-L138_Bootloader#When_should_I_use_Emulation_Boot_Mode.3F

      It is likely that when you were using any other boot mode, if you do a system reset or a power on reset, if you had both the DSP side and ARM side debugger open and connected, then DSP will go back to is power on reset state of being clocked off and disabled , that could be tripping or messing up your emulator. 

      If you only had the ARM side CCS up and DSP powered off and not in use and still saw some issue, then it could be something else. 

      To eliminate ARM/SYS BIOS or NDK as an issue, you could see if it is easier for you to debug any other ARM side project, that could be part of the LogicPD BSL, Starterware, or packages like quickstartrcsl etc.

      Hope this helps.

      Regards

      Mukul 

       

       

      Don't forget to verify answers to your forum questions by using the green "Verify Answer" button.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • DT
      Posted by DT
      on Jan 02 2012 10:45 AM
      Intellectual510 points

      Thanks for your reply. I'll check the wiki link :)

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Roy Dika
      Posted by Roy Dika
      on Mar 21 2012 18:47 PM
      Prodigy80 points

      Hi DT,

      Have you figured out the answer to this problem yet?

      I found this same problem nearly a year ago...the thread link that I brought it up in looking for help follows...

      http://e2e.ti.com/support/embedded/bios/f/355/t/92382.aspx?PageIndex=2

      I found identical results to yours -- not working on the ARM core, but working on the DSP.  However, I have some serious DSP work needed in my product so I cannot use that core for communication too!  I'm also using SYS/BIOS on both cores.  I had asked a final question on my post there, but never got a follow-up response if it was a bug or not, and my issue was closed.

      The workaround given at that time was to reset the ARM using the emulator before running the NDK example app on the ARM, but that only allowed me to continue my development of my product.  Now I'm trying to do a power-on boot of my product and don't have that luxury, since the only computer interface in my product is TCP/IP and the problem remains.  So again, I am trying to figure out what is going on.

      I see your last post in early January was that you were going to try some other example programs--did you try that?  That exercise didn't show me anything other than the simple programs work on both cores.  I don't remember if the other SYS/BIOS examples worked on the ARM or not (if I remember right, they didn't on the L138 ARM), but running those didn't give me a clue on how to fix the original problem.

      What I see now that I'm more familiar with this processor is that when the NDK is started on the ARM core without the reset, when I break execution it ends up with the PC at low addresses (below 0x01000000) -- where no valid memory exists.  It looks like the vectors at 0xffff0000 are configured correctly though.  Another thing I found, was when doing a SW reset instead of a HW reset on the ARM using the emulator, it branches to 0x00000000 instead of 0xfffff0000 which could also explain why I see it trying to execute in low memory, but I don't know what the difference is when the emulator does a SW boot or a HW boot!  I also thought a clue might be in the L138 errata Section 2.1.10 where the VSR was not initialized, but after taking various register dumps during emulator boot and power-on boot, I don't think that is the problem either (I'm not positive though).

      I see that this issue is now tagged as answered,  Is it?  I don't see an answer, only that you'll try to look into the examples further...  If it is answered, will you get notification that I replied to you?  If it is resolved, where do I find the resolution?  Please reply to this thread to acknowlege that you received my questions.  I don't know if the thread is dead once its marked answered...

      Roy

       

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • DT
      Posted by DT
      on Apr 02 2012 14:34 PM
      Intellectual510 points

      Hi,

      sorry for the delay. Yeah, I got the notification when you posted. I'm out working on another project at the moment so I can't really try a lot. If I recall, I found why the applications were not running, but didn't go deep in this. It was because of the Boot Mode on the eval board. I still don't know why I needed to use the Debug Mode (Boot) instead of the SPI Flash one.

      And since I got off the project for an urgency at that moment, I haven' try booting the application on the SPI Flash with the SPI Flash Boot Mode, so I don't know if it will work. I'll gladly look for more answers when I'm back to this project.

      Feel free to keep me posted!

      Thanks,

      DT

      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