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.

[TDA4M] TIDL_init is not responding at EVM

Hi

- test SDK version : PSDK 06.00.01

- test target : J7 EVM

- description

I imported my own network with TIDL and check it is working at PC Emulation mode.

I executed it with EVM, it is waiting response of TIDL_init() forever.

(I used app_tidl_objection_detection application for verifying my network by only changing cfg file)

I already checked tidl sample application is working at EVM board.

I'm attaching the log.(I enabled VX_ZONE_INFO)

Please let me know what should I check for this issue.

Regards.

-------- log --------

APP: Init ... !!!
APP_LOG: Mapping 0xb8000000 ...
APP_LOG: Mapped 0xb8000000 -> 0xffff9fd70000 of size 262144 bytes
MEM: Init ... !!!
MEM: Init ... Done !!!
IPC: Init ... !!!
APP_LOG: Mapping 0xb8040000 ...
APP_LOG: Mapped 0xb8040000 -> 0xffff79db0000 of size 33292288 bytes
APP_LOG: Mapping 0x30e00000 ...
APP_LOG: Mapped 0x30e00000 -> 0xffffa0280000 of size 3072 bytes
IPC: Init ... Done !!!
REMOTE_SERVICE: Init ... !!!
REMOTE_SERVICE: Init ... Done !!!
APP: Init ... Done !!!
0.003175 s: VX_ZONE_INIT:Enabled
0.003195 s: VX_ZONE_ERROR:Enabled
0.003199 s: VX_ZONE_WARNING:Enabled
0.003203 s: VX_ZONE_INFO:Enabled
0.003398 s: VX_ZONE_INIT:[tivxInit:64] Initialization Done !!!
0.003534 s: VX_ZONE_INIT:[tivxHostInit:35] Initialization Done for HOST !!!
background
vehicle
person
0.124299 s: VX_ZONE_INFO:[ownGraphNodeKernelInit:547] kernel init for node 0, kernel com.ti.img_proc.img.preprocess ...
0.124536 s: VX_ZONE_INFO:[ownGraphNodeKernelInit:559] kernel init for node 0, kernel com.ti.img_proc.img.preprocess ... done !!!
0.124544 s: VX_ZONE_INFO:[ownGraphNodeKernelInit:547] kernel init for node 1, kernel com.ti.tidl ...
[C7x_1 ] 1744.742818 s: VX_ZONE_INFO:[tivxKernelTIDLCreate:558] L1 = 16 KB, L2 = 448 KB, L3 = 7968 KB
[C7x_1 ] 1744.742935 s: VX_ZONE_INFO:[tivxAlgiVisionCreate:280] Calling ialg.algNumAlloc ...
[C7x_1 ] 1744.743049 s: VX_ZONE_INFO:[tivxAlgiVisionCreate:284] Allocating 12 memory records ...
[C7x_1 ] 1744.743170 s: VX_ZONE_INFO:[tivxAlgiVisionCreate:294] Calling ialg.algAlloc ...
[C7x_1 ] 1744.770095 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 0 @ space = 17, size = 2776, align = 128 ...
[C7x_1 ] 1744.770278 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 0 @ space = 17 and size = 2776, addr = b04d5800 ...
[C7x_1 ] 1744.770447 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 1 @ space = 17, size = 104, align = 128 ...
[C7x_1 ] 1744.770656 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 1 @ space = 17 and size = 104, addr = b04d6400 ...
[C7x_1 ] 1744.770824 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 2 @ space = 0, size = 16384, align = 128 ...
[C7x_1 ] 1744.770993 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 2 @ space = 0 and size = 16384, addr = 64e00000 ...
[C7x_1 ] 1744.771162 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 3 @ space = 1, size = 458752, align = 128 ...
[C7x_1 ] 1744.771331 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 3 @ space = 1 and size = 458752, addr = 64800000 ...
[C7x_1 ] 1744.771528 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 4 @ space = 2, size = 8159232, align = 128 ...
[C7x_1 ] 1744.771697 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 4 @ space = 2 and size = 8159232, addr = 70020000 ...
[C7x_1 ] 1744.771868 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 5 @ space = 17, size = 2579538, align = 128 ...
[C7x_1 ] 1744.772069 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 5 @ space = 17 and size = 2579538, addr = b04d6800 ...
[C7x_1 ] 1744.772239 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 6 @ space = 17, size = 256, align = 128 ...
[C7x_1 ] 1744.772409 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 6 @ space = 17 and size = 256, addr = b5404000 ...
[C7x_1 ] 1744.772606 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 7 @ space = 17, size = 3950848, align = 128 ...
[C7x_1 ] 1744.772777 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 7 @ space = 17 and size = 3950848, addr = b5404400 ...
[C7x_1 ] 1744.772946 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 8 @ space = 17, size = 128, align = 128 ...
[C7x_1 ] 1744.773111 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 8 @ space = 17 and size = 128, addr = b57c9000 ...
[C7x_1 ] 1744.773280 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 9 @ space = 17, size = 128, align = 128 ...
[C7x_1 ] 1744.773445 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 9 @ space = 17 and size = 128, addr = b57c9400 ...
[C7x_1 ] 1744.773644 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 10 @ space = 17, size = 692480, align = 128 ...
[C7x_1 ] 1744.773829 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 10 @ space = 17 and size = 692480, addr = b074c800 ...
[C7x_1 ] 1744.773999 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:170] Allocating memory record 11 @ space = 17, size = 1273168, align = 128 ...
[C7x_1 ] 1744.774194 s: VX_ZONE_INFO:[tivxAlgiVisionAllocMem:180] Allocated memory record 11 @ space = 17 and size = 1273168, addr = b07f5c00 ...
[C7x_1 ] 1744.774341 s: VX_ZONE_INFO:[tivxAlgiVisionCreate:305] Calling ialg.algInit ...

<wait forever>

  • Hi,

      Can you confirm that you have run quant stats tool while import?

    Regards,

    Anshu

  • Hi

    1. run quant stats tool

    I checked it with not only tidl_quant_stats_tool.out but app_tidl_object_detection at PC host Emulation Mode.

    My network is processed with these applications at PC host Emulation Mode.

    2. tidl error code

    I can find that TIDL_init() is returned the below error.

    However I couldn't figure out the reason with this error code (-1 means just IALG_EFAIL)

    Do you have any way to find the detail error reason?

    ---- log ---

    [C7x_1 ] 48.030906 s: VX_ZONE_INFO:[tivxAlgiVisionCreate:305] Calling ialg.algInit ...

    [C7x_1 ] 48.036112 s: VX_ZONE_ERROR:[tivxAlgiVisionCreate:316] Calling ialg.algInit failed with status = -1

    3. run TI_DEVICE_dsp_test_dl_algo.out at EVM

    I try to run TI_DEVICE_dsp_test_dl_algo.out at EVM, but it cannot be executed because of the below reason.

    How can I run TI_DEVICE_dsp_test_dl_algo.out at EVM?

    --- EVM ---

    root@j7-evm:/opt/vision_apps# ./TI_DEVICE_dsp_test_dl_algo.out
    -sh: ./TI_DEVICE_dsp_test_dl_algo.out: cannot execute binary file: Exec format error

    Regards.

  • Hi,

        You can enable traces by setting traceLogLevel = 1 ( this is part of TIDL create time parameters). This will print the error messages which can help us figure out the cause for this error.

    Regards,

    Anshu

  • Hi.

    I try to run TI_DEVICE_dsp_test_dl_algo.out at EVM, but it cannot be executed because of the below reason.

    How can I run TI_DEVICE_dsp_test_dl_algo.out at EVM?

    I build the binary at my side, but the result is same.

    ( make -C ./test -f makefile TARGET_PLATFORM=TI_DEVICE )

    --- EVM ---

    root@j7-evm:/opt/vision_apps# ./TI_DEVICE_dsp_test_dl_algo.out
    -sh: ./TI_DEVICE_dsp_test_dl_algo.out: cannot execute binary file: Exec format error

    Regards. 

  • Hi, 
      Please refer User guide->Build and Run Instruction->TIDL Sample application ->"Steps to run Sample Application on EVM" section to see the steps to run the executable on EVM.

    Regards,

    Anshu

  • Hi

    I launched the TI_DEVICE_dsp_test_dl_algo.out with XDS560V2Pro.

    I try to run this application after loading with CCS.

    Waiting for sync 82000000, 0 log keep being printed forever.

    How can I avoid it? and What is the reason of it?

    ---- console output ---

    [MCU_Cortex_R5_0]
    DMSC Board Configuration with Debug enable
    DMSC Firmware Version 19.6.1-v2019.06a-1-gb5a4f (Terr
    Firmware revision 0x13
    ABI revision 2.6
    [C71X_0] SCICLIENT: DMSC FW version [19.6.1-v2019.06a-1-gb5a4f (Terr]
    SCICLIENT: DMSC FW revision 0x13
    SCICLIENT: DMSC FW ABI revision 2.6

    End of config list found !

    Processing config file #0 : testvecs/config/infer/public/caffe/tidl_infer_jacintonet11v2.txt
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0
    Waiting for sync 82000000, 0

    ......

  • Hi,

    What is the capacity of SD card you are using?

    Can you try using a 4 GB card.

    Regards,

    Rishabh

  • Hi.

    I used 16GB card, I changed it to 4GB card which is formatted to FAT, FAT32.

    However, the result is same.

    Regards.

  • Hi,

       Have you followed this step :

    "Copy the target Sample Application (TI_DEVICE_dsp_test_dl_algo.out) and "testvecs" folder in to the memory card. Create a empty "trace" folder in memory card if you are enabling writeTraceLevel."

    Regards,

    Anshu

  • Hi

    Of course, I followed the guide what you mentioned.

    I found init_msg_q function keep waiting the 0x82000000 address is changed to E0F12E10.

    Please let me know why the below function keep waiting on my side.

    static void init_MSG_Q(void)
    {
        while(1)
        {
            if(sleep == 10000)
            {
                appLogPrintf("Waiting for sync %p, %d\n",  &msg_q.sync, msg_q.sync);
                sleep = 0;
            }
            Cache_wbInv((void*)0x82000000, 0x40000);
            if (*(unsigned int*)0x82000000 ==  0xE0F12E10) //(msg_q.sync == 0xE0F12E10)
            {
                msg_q_init = 1;
                break;
            }
    
            sleep++;
    
        }
        appLogPrintf("Syncd\n");
        msg_q.numMsg = 0;
    }
    

    Regards

  • Hi Choi,

    I had faced this issue some days back and it was SD card issue.

    It didn't work with 16 GB and worked with 4 GB card for me.

    One more customer also faced the same issue.

    Can you freshly format the 4 GB card for FAT32 and try again.

    Regards,

    Rishabh

  • Hi

    I found this issue is related to SOM board.

    My company has 2 EVM boards.

    I checked this issue with 2 EVM boards by changing each other.

    The result was such as below.

    (I tested it with the same sdcard , JTAG debugger and same PC)

    SOM_1, Common Processor Board_1 : NOK

    SOM_1, Common Processor Board_2 : NOK

    SOM_2, Common Processor Board_1 : OK

    SOM_2, Common Processor Board_2 : OK

    This issue is occurred with only SOM_1 board.

    I'm attaching the serial number of SOM board

    (SOM board S/N : 2919780024)

    Please let me know how can I handle this board issue.

    problem description

    1. TIDL_init() is not responding

    2. wait for sync(init_msg_q) is not complete.

     - I launched the TI_DEVICE_dsp_test_dl_algo.out with XDS560V2Pro.

     - I try to run this application after loading with CCS.

     - Waiting for sync 82000000, 0 log keep being printed forever.

    Regards

    Dongwon Choi

  • Hi Dongwon Choi,

       Can  you confirm the other board which you are using is configured to be in NO BOOT mode.


    Regards,

    Anshu

  • Hi.

    The pre-condition and detail reproduction process and the error log is below.

    1. pre-condition

      a. PSDK version : 06.00.01

      b. TIDL version : 00.09.01

      c. CCS version : 9.0.1.00004

      d. target : J721e alpha EVM

    2. reproduce step

      a. connect XDS560V2Pro to EVM board.

      b. insert sdcard and set boot mode to No boot mode (10001000 / 01110000)

      c. Start the CCS and Lauch target configuration for the EVM

          Run the script "packages\ti\drv\sciclient\tools\ccsLoadDmsc\j721e\launch.js"

      d. Run the TIDL Launch script"ti_dl\utils\targetTest\launch_tidl.js"

      e. Resume or step over in CCS for debugging TIDL model.

    3. expected behavior : TIDL Sample application can be run and debug with CCS.

    4. issue details

      a. I try to run this application after loading TI_DEVICE_dsp_test_dl_algo.out with CCS.

          Waiting for sync 82000000, 0 log keep being printed forever such as below

    5. swap test of 2 SOM boards
      a. My company has 2 EVM boards.
         I checked this issue with 2 EVM boards by changing each other.

         (I tested it with the same sdcard , JTAG debugger and same PC)

          SOM_1, Common Processor Board_1 : NOK

          SOM_1, Common Processor Board_2 : NOK

          SOM_2, Common Processor Board_1 : OK

          SOM_2, Common Processor Board_2 : OK

    This issue is occurred with only SOM_1 board (SOM_1 board S/N : 2919780024)

    Regards.

    Dongwon Choi

  • Hi Dongwon,  

        I don't see any specific reason why it works on one board and doesn't work on other. I will loop in the person who wrote this part of the code, to this thread ( he will be back on Monday).

    Regards,

    Anshu

  • Hi Dongwon,
        Can you first test if the SD card itself is working on the other board which you are using? If yes then I would request you to get the UART logs of A72 for the board which is not working.

    Regards,

    Anshu

  • Hi Anshu

    Yes, SD card is working on the other board.

    I'm attaching the uart logs when it is not working.

    0.000886 s: APP: Init ... !!!
    0.072224 s: CLI: Init ... !!!
    0.146208 s: CLI: Init ... Done !!!
    0.230208 s: MEM: Init ... !!!
    0.304209 s: MEM: Created heap (DDR_SHARED_MEM, id=0, flags=0x00000004) @ 0x800c8000 of size 8388608 bytes !!!
    0.538207 s: MEM: Init ... Done !!!
    0.622208 s: FATFS: Init ... !!!

    Regards.

    Dongwon Choi

  • Hi Dongwon,

       These UART logs do not show any messages related to FileIO. Are you sharing the logs when you get sync error from TIDL

    Regards,

    Anshu

  • Hi Anshu.

    I tested the same board with PSDK 6.1.0.

    It's working and I could see syncd log message.

    Thank you for your support and I'll change this issue to resolved.

    Regards

    Dongwon Choi