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.

could not connect to omapl138 arm

Other Parts Discussed in Thread: OMAPL138

Hi 

I am have a problem of connecting to omapl138 arm part. This is what I did and what happened

1, I set up everything, power the EVM on, turn the boot mode to be 1111 (emulator boot), build the project without errors and warnings

2, I click debug button to debug my project. But there came a error message:

C674X_0: Error connecting to the target: (Error -1180 @ 0x0) Device is held in reset. Take the device out of reset, and retry the operation. (Emulation package 5.0.569.0) 

3, As suggested in the document in the delivery package, I reset the board and clicked retry button. Then CCS can connect to omapl138 DSP core correctly. I can view memory and registers of DSP core. However, ARM core is not connected. It looks below

4, I tried scripts->wake ARM. But there were an error again about the reset stuff:

C674X_0: Output: ARM Wake Complete.
C674X_0: Output: ---------------------------------------------
C674X_0: Trouble Reading Memory Block at 0x80006780 on Page 0 of Length 0x83: (Error -1137 @ 0x7B) Device is held in reset. Take the device out of reset, and retry the operation. (Emulation package 5.0.569.0)
C674X_0: Trouble Reading Memory Block at 0x80006780 on Page 0 of Length 0xb5: (Error -1137 @ 0x7B) Device is held in reset. Take the device out of reset, and retry the operation. (Emulation package 5.0.569.0)

Now, because it's in the middle of DSP debug, I cannot reset the board to connect to ARM otherwise I will loose the data in DSP core. Even I reset the board again, this error messages keep showing up.

Does somebody know what's going on there?

I am using CCS v5.1.1.00031. My omapl138 board is omapl138 experimenter board. The emulator I am using is the built-on board emulator (i.e. I didn't use any external emulator but the USB line contained in the package). The emulator was labeled as XDS100, no version information was provided on the TI product website.

Thanks,

Fu

  • Hi Fu,

    If I recall correct, the onboard emulator on the L138 is a XDS100v1 (which does not support ARM). However, people have gotten it to work by specifying as an XDS100v2 and trying to connect after waking the ARM (which i see you did)

    Shallen Zhang said:
    Now, because it's in the middle of DSP debug, I cannot reset the board to connect to ARM otherwise I will loose the data in DSP core. Even I reset the board again, this error messages keep showing up.

    Could you try starting a project-less debug session and try connecting to both DSP and ARM first before loading any program?

    I was able to connect to both cores that way. Note that I am using the latest CCSv5 version (5.2.1) so perhaps that has an impact also.

    This is what you should see:

    C674X_0: Output:     Target Connected.
    C674X_0: Output:     ---------------------------------------------
    C674X_0: Output:     Memory Map Cleared.
    C674X_0: Output:     ---------------------------------------------
    C674X_0: Output:     Memory Map Setup Complete.
    C674X_0: Output:     ---------------------------------------------
    C674X_0: Output:     KICK Unlocked.
    C674X_0: Output:     ---------------------------------------------
    C674X_0: Output:     ARM Wake Complete.
    C674X_0: Output:     ---------------------------------------------
    ARM9_0: Output:     Memory Map Cleared.
    ARM9_0: Output:     ---------------------------------------------
    ARM9_0: Output:     Memory Map Setup Complete.
    ARM9_0: Output:     ---------------------------------------------
    ARM9_0: Output:     Enabling Experimenter PSCs...
    ARM9_0: Output:     PSC Enable Complete.
    ARM9_0: Output:     ---------------------------------------------
    ARM9_0: Output:     PLL0 init done for Core:300MHz, EMIFA:25MHz
    ARM9_0: Output:     mDDR initialization is in progress....
    ARM9_0: Output:     PLL1 init done for DDR:150MHz
    ARM9_0: Output:     Using mDDR settings
    ARM9_0: Output:     mDDR init for 150 MHz is done
    ARM9_0: Output:     ---------------------------------------------
    ARM9_0: Output:     DSP Wake Complete.
    ARM9_0: Output:     ---------------------------------------------

  • Hi Ki-soo

    Thanks a lot for your reply.  I tried the CCSv5.2.1. Every time I click debug button, CCS will connect to omapl138 DSP core and load the programming all together automatically. So it seems no way to just connect to omapl138 without loading codes into it. And it still pops up the error:

    C674X_0: Error connecting to the target: (Error -1180 @ 0x0) Device is held in reset. Take the device out of reset, and retry the operation. (Emulation package 5.0.747.0)

    After I reset the board, it looks almost the same as previous version:

    As shown above, there are two more terms (PRU_0 PRU_1), ARM is still unconnected.

    This is what it looks like in console after reseting the board:

    C674X_0: Error connecting to the target: (Error -1180 @ 0x0) Device is held in reset. Take the device out of reset, and retry the operation. (Emulation package 5.0.747.0)
    C674X_0: Output: Target Connected.
    C674X_0: Output: ---------------------------------------------
    C674X_0: Output: Memory Map Cleared.
    C674X_0: Output: ---------------------------------------------
    C674X_0: Output: Memory Map Setup Complete.
    C674X_0: Output: ---------------------------------------------
    C674X_0: Output: KICK Unlocked.
    C674X_0: Output: ---------------------------------------------

    Compared with your result, ARM didn't wake up automatically after connecting to omapl138

    Then I tried scripts->Wake up ARM, there was only one message shown in console: ARM wake complete, and nothing further happended

    this is what I got from console in this whole process:

    C674X_0: Error connecting to the target: (Error -1180 @ 0x0) Device is held in reset. Take the device out of reset, and retry the operation. (Emulation package 5.0.747.0)
    C674X_0: Output: Target Connected.
    C674X_0: Output: ---------------------------------------------
    C674X_0: Output: Memory Map Cleared.
    C674X_0: Output: ---------------------------------------------
    C674X_0: Output: Memory Map Setup Complete.
    C674X_0: Output: ---------------------------------------------
    C674X_0: Output: KICK Unlocked.
    C674X_0: Output: ---------------------------------------------
    C674X_0: Output: ARM Wake Complete.
    C674X_0: Output: ---------------------------------------------

    And this is what debug session looks like after I click scripts->wake up ARM

    Basically, it is almost as my previous error. So I was wondering did you also use the built -on emulator (which is v1 as you said) instead of external emulator(which maybe v2)? And how can I just connect to omapl138 without loading code as suggested in your reply? my project was created as a C6000 project, could this be the reason? but I didn't see there was a omapl138 option when I created my project. 

    Thanks,

    Fu

  • Shallen Zhang said:
    So it seems no way to just connect to omapl138 without loading codes into it.

    It is possible. See slides 79-81 of: http://software-dl.ti.com/dsps/dsps_public_sw/sdo_ccstudio/workshops/CCSv5/C2000/CCSv5-Workshop%28C2000%29_2.pdf

    Shallen Zhang said:
    Compared with your result, ARM didn't wake up automatically after connecting to omapl138

    The Debug button would only connect to the DSP since your program is for the DSP. It would not do anything with the ARM

    Shallen Zhang said:
    Then I tried scripts->Wake up ARM, there was only one message shown in console: ARM wake complete, and nothing further happended

    Yes, that is expected. It wakes up the ARM so that then you can manually connect to it.

    Shallen Zhang said:
    So I was wondering did you also use the built -on emulator (which is v1 as you said) instead of external emulator(which maybe v2)?

    Yes I used the built in emulator. I specified it as a v2 in the ccxml file even though it is really a v1.

    Shallen Zhang said:
    And how can I just connect to omapl138 without loading code as suggested in your reply?

    It is in that URL I mentioned earlier

    Shallen Zhang said:
    my project was created as a C6000 project, could this be the reason?

    That is fine. But CCS will see that it is a C6000 project and only try to connect to the DSP and load to the DSP. It will leave the ARM alone (for the most part)

    Shallen Zhang said:
    but I didn't see there was a omapl138 option when I created my project. 

    Right. You need to specify if you want to create a project for the DSP or ARM. There is no "OMAP L138" project.

    My steps:

    1) Start a project-less debug session

    2) connect to DSP

    3) scripts -> Wake up ARM

    4) connect to ARM

  • Hi Ki-soo

    Thanks very much for your help. I created a new project using 5.2 like you said and it worked very well. I think my previous result was causing problems because I created them using CCSv4. 

    Thanks again for your help.

    Fu