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.

RTOS/DRA74: IPUMM on VSDK-Linux and IPU-1 as primary IPU for Vision-SDK

Part Number: DRA74

Tool/software: TI-RTOS

As gudie to compile then run the app.out. has an error. VSDK0305.

Could you give me some suggestions? thanks.

root@dra7xx-evm:/opt/vision_sdk# ./apps.out
[HOST] OSA: MEM: 0: Mapped 0xa0100000 to 0xb6a16000 of size 0x00100000
[HOST] OSA: MEM: 1: Mapped 0x84203000 to 0xa3e16000 of size 0x12c00000
[HOST] OSA: MEM: 2: Mapped 0xa0200000 to 0xa3d56000 of size 0x00040000
[HOST] OSA: MEM: 3: Mapped 0xa02c0000 to 0xa3d96000 of size 0x00080000
[HOST] OSA: MEM: 4: Mapped 0x00000000 to 0x00000000 of size 0x00000000
[HOST] OSA: IPU1-0 Remote Log Shared Memory @ 0xa0200000
[HOST] OSA: HOST Remote Log Shared Memory @ 0xa024f140
[HOST] [IPU1-0] 21.282529 s: ***** IPU1_0 Firmware build time 16:34:35 Nov 27 2018
[HOST] [IPU1-0] 21.282712 s: *** SYSTEM: CPU Frequency <ORG = 212800000 Hz>, <NEW = 212800000 Hz>
[HOST] [IPU1-0] 21.285640 s: SYSTEM: System Common Init in progress !!!
[HOST] [IPU1-0] 21.294973 s: UTILS: CIO: Init Done !!!
[HOST] [IPU1-0] 21.295064 s: SYSTEM: IPC init in progress !!!
[HOST] [IPU1-0] 21.295156 s: SYSTEM: Notify init done !!!
[HOST] [IPU1-0] 21.296864 s: SYSTEM: MsgQ init done !!!
[HOST] [IPU1-0] 21.297810 s: RpmsgInit in progress...
[HOST] [IPU1-0] 21.297901 s: Connection established with HLOS, calling rpmsgInit
[HOST] [IPU1-0] 21.298206 s:
[HOST] [IPU1-0] 21.298237 s: ### XDC ASSERT - ERROR CALLBACK START ###
[HOST] [IPU1-0] 21.298328 s:
[HOST] [IPU1-0] 21.298633 s: assertion failure
[HOST] [IPU1-0] 21.298694 s:
[HOST] [IPU1-0] 21.298725 s: ### XDC ASSERT - ERROR CALLBACK END ###
[HOST] [IPU1-0] 21.298786 s:
[HOST] [HOST ] 47.731379 s: SYSTEM: System A15 Init in progress !!!

  • Hi Widic,

    You would need to perform the follow changes:

    1. In vision-SDK please make the following modifications in the apps/src/tda2xx_evm_linux_all/cfg.mk file
    IVAHD_ENABLE=no
    IPUMM_ENABLE=no
    PROC_IPU2_INLCUDE=no

    PROC_IPU1_0_INCLUDE=yes

    PROC_IPU1_1_INCLUDE=no

    IPU_PRIMARY_CORE=ipu1_0
    IPU_SECONDARY_CORE=ipu2

    Perform a clean-build after these changes.

    2. With the above changes, only the Vision-SDK firmware is built. The IPU-MM firmware needs to be sepearately built -- instructions to which can be found here:
    processors.wiki.ti.com/.../Processor_Training:_Multimedia

    3. In the Linux kernel device-tree, please make the following modifications:

    &ipu1 {
    status = "okay";
    };

    &ipu2 {
    reg = <0x0 0x95800000 0x0 0x38000000>;
    };

    Recompile Linux after these changes.

    Regards
    Shravan

  • Hi,Shravan,

    I tried this, but it has the same error.
    Could you share your patch to me .thanks

    Widic
  • now ipu1 worked, but has the below error

    root@dra7xx-evm:~# ./decode_ipumm.sh
    Setting pipeline to PAUSED ...
    Pipeline is PREROLLING ...
    MmRpc_create: Error: open failed, name=/dev/rpmsg-dce
    ../git/libdce.c:416: dce_ipc_init ERROR: Failed eError == DCE_EOK error val -4../git/libdce.c:479: Engine_open ERROR: Failed dce_ipc_init(coreIdx) == DCE_EOK error val -4MmRpc_create: Error: open failed, name=/dev/rpmsg-dce
    ../git/libdce.c:416: dce_ipc_init ERROR: Failed eError == DCE_EOK error val -4../git/libdce.c:479: Engine_open ERROR: Failed dce_ipc_init(coreIdx) == DCE_EOK error val -4Redistribute latency...
    Caught SIGSEGV
    Pipeline is PREROLLED ...
    Setting pipeline to PLAYING ...
    New clock: GstAudioSinkClock
    #0 0xb6b6ce50 in poll () at ../sysdeps/unix/syscall-template.S:81
    #1 0xb6c9e9f8 in ?? () from /usr/lib/libglib-2.0.so.0
    Spinning. Please run 'gdb gst-launch-1.0 972' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
  • Hi Widic,

    It looks like there's issue with the IPUMM firmware load.
    Can you also add the below line to your kernel DTB and see if it works.

    &ipu2{
    timers= <&timer3>;
    };

    Also, support for early-boot+late-attach on the IPUMM firmware isn't supported. So please make sure IPUMM firmware is being boot-strapped only from Linux and not from u-boot.

    Regards
    Shravan
  • Thanks,
    it works.