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.

AM5728: messageq_single.xe66 error

Part Number: AM5728

Tool/software:

After installing "ti-processor-sdk-rtos-am57xx-evm-06.03.00.106", create messageq_single.xe66 build successfully using the ipc_bios command.
After copying to the board and running it, I get the following error, how do I resolve it?

[514361.993194] remoteproc remoteproc2: handling crash #4 in 40800000.dsp
[514361.999816] remoteproc remoteproc2: recovering 40800000.dsp
[514362.043029] remoteproc remoteproc2: stopped remote processor 40800000.dsp
[514362.055541] remoteproc2#vdev0buffer: assigned reserved memory node dsp1-memory@99000000
[514362.070892] remoteproc remoteproc2: crash detected in 40800000.dsp: type mmufault
[514362.095916] remoteproc2#vdev0buffer: registered virtio2 (type 7)
[514362.102355] remoteproc remoteproc2: remote processor 40800000.dsp is now up
[514371.663421] remoteproc remoteproc2: crash detected in 40800000.dsp: type watchdog

  • Hello Seung,

    Did you follow the instructions from the RTOS documentation?

    since you used the ipc_bios command, I believe the SDK makes firmware for a BIOS (TI-RTOS) only system and does not include the needed files for interfacing the firmware with Linux. 

    Can you please show me the instructions that you followed?

    -Josue

  • https://www.ti.com/video/5694316667001

    I built it after watching the video.
    Not only messageq_single.xe66 but also ex02_messageq have the same handling crash.

  • Seung,

    Please take a look at the following link for deploying the IPC examples in Linux: https://software-dl.ti.com/processor-sdk-linux/esd/docs/06_03_00_106/linux/Foundational_Components_IPC.html#ipc-quick-start-guide

    It is a little different than what you are describing above.

    -Josue

  • I followed the Rebuilding the demo, Build IPC Linux experiments, and Run IPC Linux experiments instructions through the link you sent me, but the same error occurs when I run server_dsp1.xe66.


    [ 438.859680] remoteproc remoteproc2: handling crash #44 in 40800000.dsp
    [ 438.866241] remoteproc remoteproc2: recovering 40800000.dsp
    [ 438.909942] remoteproc remoteproc2: stopped remote processor 40800000.dsp
    [ 438.921752] remoteproc2#vdev0buffer: assigned reserved memory node dsp1-memory@99000000
    [ 438.937652] remoteproc2#vdev0buffer: registered virtio2 (type 7)
    [ 438.943969] remoteproc remoteproc2: remote processor 40800000.dsp is now up
    [ 448.529602] remoteproc remoteproc2: crash detected in 40800000.dsp: type watchdog
    [ 448.537139] remoteproc remoteproc2: handling crash #45 in 40800000.dsp
    [ 448.543823] remoteproc remoteproc2: recovering 40800000.dsp
    [ 448.589904] remoteproc remoteproc2: stopped remote processor 40800000.dsp
    [ 448.602844] remoteproc2#vdev0buffer: assigned reserved memory node dsp1-memory@99000000
    [ 448.619049] remoteproc2#vdev0buffer: registered virtio2 (type 7)
    [ 448.625274] remoteproc remoteproc2: remote processor 40800000.dsp is now up
    [ 458.210723] remoteproc remoteproc2: crash detected in 40800000.dsp: type watchdog



    Crash errors occur repeatedly.

  • Hello Seung I will be out of office until the 21st of the month. I appreciate your patience.

    Josue

  • Hello Seung,

    but the same error occurs when I run server_dsp1.xe66.

    by any chance, are you linking your firmware to the hard-coded name that the SW expects as mentioned in the Documentation?

    Could you please upload a step by step description of your procedure?

    -Josue

  • I linked and loaded the file that built the ex02_messageq example under the /lib/firmware directory, but I got a crash error.

    ln -sf /root/ipc-starter/ex02_messageq/server_dsp1.xe66 /lib/firmware/dra7-dsp1-fw.xe66
    echo 40800000.dsp > /sys/bus/platform/drivers/omap-rproc/unbind
    echo 40800000.dsp > /sys/bus/platform/drivers/omap-rproc/bind

    ln -sf /root/ipc-starter/ex02_messageq/server_dsp2.xe66 /lib/firmware/dra7-dsp2-fw.xe66
    echo 41000000.dsp > /sys/bus/platform/drivers/omap-rproc/unbind
    echo 41000000.dsp > /sys/bus/platform/drivers/omap-rproc/bind

    ln -sf /root/ipc-starter/ex02_messageq/server_ipu1.xem4 /lib/firmware/dra7-ipu1-fw.xem4
    echo 58820000.ipu > /sys/bus/platform/drivers/omap-rproc/unbind
    echo 58820000.ipu > /sys/bus/platform/drivers/omap-rproc/bind

    ln -sf /root/ipc-starter/ex02_messageq/server_ipu2.xem4 /lib/firmware/dra7-ipu2-fw.xem4
    echo 55020000.ipu > /sys/bus/platform/drivers/omap-rproc/unbind
    echo 55020000.ipu > /sys/bus/platform/drivers/omap-rproc/bind

  • Could you please upload a step by step description of your procedure?

    ... For building the examples.

    Also, I noticed the phycore name in your Linux prompt. Is this a Phytec board and SW? or are you using a TI EVM?

    -Josue

  • I set it up through the phyCORE-AM57x Linux SD card included when I bought the AM5728 board.

    The example construction was carried out according to the manual given above.

    https://software-dl.ti.com/processor-sdk-linux/esd/docs/06_03_00_106/linux/Foundational_Components_IPC.html#ipc-quick-start-guide

    ARM Linux:

    1. Install Linux Proc SDK at the default location

    2. Include cross-compiler directory in the $PATH

    export PATH=<sdk path>/linux-devkit/sysroots/x86_64-arago-linux/usr/bin:$PATH
    

    3. Setup TI RTOS PATH using

    export TI_RTOS_PATH=<RTOS_SDK_INSTALL_DIR>
    export IPC_INSTALL_PATH=<RTOS_SDK_IPC_DIR>
    

    4. In Linux Proc SDK, start the top level build:

    $ make ti-ipc-linux


    DSP RTOS :

    1. Install RTOS Proc SDK at the default location

    2. If RTOS Proc SDK and tools are not installed at its default
    location, then the environment variables, SDK_INSTALL_PATH and TOOLS_INSTALL_PATH need to be exported with their installed locations.
    export SDK_INSTALL_PATH=<RTOS_SDK_INSTALL_DIR>
    export TOOLS_INSTALL_PATH=<RTOS_SDK_INSTALL_DIR>

    3. Configure the build environment in
    <RTOS_SDK_INSTALL_DIR>/processor_sdk_rtos_<platform>_x_xx_xx_xx directory
    $ cd <RTOS_SDK_INSTALL_DIR>/processor_sdk_rtos_<platform>_x_xx_xx_xx
    $ source ./setupenv.sh
    

    4. Start the top level build:

    $ make ipc_bios
    

    Build IPC Linux examples

    $ cd <TI_LINUX_PROC_SDK_INSTALL_DIR>
    $ make ti-ipc-linux
    $ cd <TI_LINUX_PROC_SDK_INSTALL_DIR>
    $ make ti-ipc-linux-examples


    I linked and loaded the file that built the ex02_messageq example under the /lib/firmware directory, but I got a crash error.

  • Hello, 

    Out of office today due to US holiday. 

    Thank you for your understanding.

    Josue

  • Seung,

    Is this the package you purchased? https://www.phytec.eu/en/produkte/development-kits/phycore-am57x-rapid-development-kit/

    If so, than the support for it is provided by Phytec and not TI. TI does not validate the Phytec boards. 

    I can try to see if I can successfully reproduce this issue on this old SDK on one of the TI boards, but since the Standard support for the SDK 6.03 has been over for over 4 years, I cannot prioritize it for a little while. I will be out of office next week on business so I cannot commit to trying this for at least two weeks. 

    -Josue