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.

TDA4VM: TD4VM MCU2_1 and MCU1_0 use Cddipc with A72

Part Number: TDA4VM

Tool/software:

Dear experts,

  I can communicate with A72 using cddipc on MCU1_0 and MCU2_1 respectively. Now I can communicate with A72 using Cddipc on both MCU1_0 and MCU2_1, but the program is stuck at Ipc_isRemoteReady on MCU2_1.

I am based on Sdk8.6, MCU1_0 using sbl boot.

thanks.

  • Hello,

      I can communicate with A72 using cddipc on MCU1_0 and MCU2_1 respectively. Now I can communicate with A72 using Cddipc on both MCU1_0 and MCU2_1, but the program is stuck at Ipc_isRemoteReady on MCU2_1.

    You are able to communicate A72 to MCU1_0 but not with MCU2_1 ? is that your question ?

    Sorry i didn't understand correctly, could you please tell me more clearly?

    Regards

    Tarun Mukesh

  • I now MCU1_0 can communicate with A72, but MCU2_1 can't communicate with A72.I want both MCU2_1 and MCU1_0 to communicate with A72 using CddIpc.

  • Hello,

    We have an example which communicates MCU2_1 with A72 linux , 

    ti-processor-sdk-rtos-j721e-evm-08_06_00_12/mcusw/mcal_drv/mcal/examples/CddIpcRProcLinux/soc/j721e/mcu2_1/CddIpcAppStartup.c

    You can try using this application to understand ,why your application is halting.

    Regards

    Tarun Mukesh

  • When I first started, I debugged MCU2_1 communication with A72, and after MCU2_1 was able to communicate with A72, I began debugging MCU1_0 communication with A72. After MCU1_0 was able to communicate with A72, I found that MCU2_1 could not communicate with A72, and the MCU2_1 program was stuck at Ipc_isRemoteReady. Now, what I want is for MCU2_1 and MCU1_0 to communicate with A72 using Cddipc separately. Is it not currently supported for MCU2_1 and MCU1_0 to communicate with A72 using Cddipc separately?

  • Hello,

    Have you reloaded the application on MCU2_1 ? How are testing the communication with A72 ?

    Are you running custom applications on MCU2_1 ?

    Regards

    Tarun Mukesh

  • A72 using modprobe rpmsg_client_sample count=10 command test, now MCU1_0 can correctly initialize cddipc and communicate with A72; Run Cddipc demo program on MCU2_1, the program stops at Ipc_isRemoteReady; The same goes for running our own program on MCU2_1, which also stops at pc_isRemoteReady.

  • Hello,

    This is struct at this while loop because it didn't get confirmation whether A72 is ready or not.

    What is MCU2_1 doing when A72 is communicating with MCU1_0? Are you following SBL or SPL?

    Have you reloaded the application on MCU2_1 ? How are testing the communication with A72 ?

    Are you running custom applications on MCU2_1 ?

    You didn't answer my questions ?

    modprobe rpmsg_client_sample count=10

    This is kernel level test and communicates with all cores at the same time.If you want to use application level rpmsg_char_simple can be used .

    Regards

    Tarun Mukesh

  • Hello,

    I used sbl to start, then MCU1_0 to start spl,MCU2_1 to start through A72,MCU2_1 to start later than A72; When MCU1_0 and A72 communicate normally, I start to debug the MCU2_1 program. I use the flag at the beginning of the MCU2_1 program, and continue to run by changing the flag.

    This is MCU2_1 debug flag:

    Thanks.

  • Hello,

    First of all 

    I used sbl to start, then MCU1_0 to start sp

    SBL and SPL both cant be used at once, you can use either one of boot flow.

     MCU1_0 to start spl,MCU2_1 to start through A72,MCU2_1 to start later than A72; When MCU1_0 and A72 communicate normally, I start to debug the MCU2_1 program

    If you are using SPL flow then A72 uboot starts MCU2_1 later only linux boots up.After linux boots up ,login as root and run rpmsg_char_simple -r 0 -n 10 command for linux A72 to communicate with MCU1_0

    You can use rpmsg_char_simple -r 3 -n 10 to communicate with MCU2_1.

    Regards

    Tarun Mukesh