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.

AM2632: Debugging in Lockstep-Mode

Part Number: AM2632


Hello,

at the moment I am using AM2634-LP, but in my final project we will use AM2632.
I tried the CCM-example from SDK-9.0. In the readme.html I read, that I should use the example only with QSPI-boot mode (not in debugger mode).

Now my question: 

Is it possible to debug in lockstep-mode? If I loaded the example in debug mode, I always get a hanging ESM callback function.

Thanks,

Jo Scho

  • Hello Jo,

    Reading the description of the example, the example should not be run with a debugger connected. To my knowledge, the only way to run the example is to flash the QSPI app image over UART. I will sync with the subject matter expert to confirm if there is a way to debug the example. 

    Regards,

    Erik

  • Hello Erik,

    I got an email yesterday evening from e2e-forum/you with the following content:

    Do you still need this information, or is it not possible to debug with connected debugger?

    Best regards,

    Jo

  • Hello Jo, 

    It is my understanding that you can't debug the example and can only run it via flashing the application image. 
    I have included the example owner on this thread to comment on the debuggability of the example. 

    Regards,

    Erik

  • Hello Erik,

    I have the problem in debug mode, during single stepping (more details see below).

    In normal mode (loading image from external flash via QSPI and executon from RAM afterwards, the problem is not existing, see here my TeraTerm-log





    Now some more details to my configuration:

    SDK-version:    AM263x-9.0.0.35
    Hardware:         AM263x-LP(Evalboard)
    CCS-Version:    CCS 12.2
    Compiler:          TI Clang v2.1.2.LTS

    I used the SDL-CCM-example from SDK, but this example is made for 253x-CC, is this a problem?


    How the problem occurs?

    The problem is existing in debud and release configuration similary.
    I also tried with boot mode DevBoot or QSPI(4). For DevBoot I have flashed NULL-Bootloader. In QSPI I have tried Null-BL and QSPI-BL.
    With all tried configurations the problems is exisiting.

    After compiling the project, I debug the project on the eval-board. Therefore I use "Debug as" (Button "Bug").

    Before starting to connect, I made a power reset of my evalboard.
    The IDE connects to the target, loads program and stops at the main-function.

    Now I use F6/Step over function three times. The programs stops at CC_main(NULL).
    In detail I could localize the problem here:

    In the function Esmhandlerinit the function SDL_DPL_registerInterrupt() is called.

    I could step into the function SDL_DPL_registerInterrupt and stop at line 125/sdl_dpl.c

    Now I step with single step into this function, and stop at line 115(dpl_interface.c), I step into this function now.

    Inside of HwiP_construct, I could step to line 176/Hwip_arm7r_vim.c

    With execution ofthe next line the problem occurs, I got the following endless terminal output.

    When stopping further execution, the program stops here:

    What can I do?

    Best regards

    Jo

  • Hello Erik, 
    now I have tried the second example now (VIM Application) in debuging mode.
    With this example I also get an error in debugging mode.

    Execting the example from QSPI without debugging works properly.

  • Hello Jo,

    CCM(R5F and VIM) examples are supported only in QSPI boot mode. No Boot mode is not supported for these examples. 

    Thanks and Regards,
    Vishwanath Reddy.

  • Hello Vishwanath,

    thank you for your answer. But I think this resolves my poblem not complete.
    I understood, running the example is only possible in QSPI boot mode.

    But is it possible to debug in QSPI boot mode? 
    I can connect to R5F-controller in QSPI mode also with my debugger probe and load/run my programm. 

    Thanks and best regards

    Jo

  • Hello Jo,

    In safety manual, you can see below statement:

    The lockstep checking is disabled when the CPU is placed into a halting debug state and can only be restored to operation after a subsequent reset.

    Lock step example cannot be debugged since as soon as debugger is connected, lockstep checking is disabled. You can add debug statements in the code and monitor the logs in the terminal.

    Thanks and Regards,
    Vishwanath Reddy.