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.

Problem of M3 video(codec) crash.

Hello,TIer~

Now we use DM8168 to develop our MultiMediaStreamerServer,But in some case,the M3 codec will hang,it no longer send H.264 BitStream.It seems M3 codec crashed.
I wanna know that what situation,or what operation, will make M3 codec crash?
Expecting that you can give us a direction that we can check our software or hardware to solve this problem.

  • 1.First share the console logs with remote_debug_client.out running to identify the source of the problem.

    H264 bitstream may not be sent if

    1. VPSS M3 crash due to h/w or s/w exception. If VPSS crash happens your display should be blanked out.

    2. Video M3 crash due to h/w or s/w exception

    3. HDVICP crash

    4. HDVPSS hang.

    2.If you don't see any h/w or s/w exception msg in the log when hang occurs collect logs of Vsys_printDetailedStatistics and Vsys_printBufferStatistics collected atleast 2 times with 1 min interval.

    3. WHen hang occurs try stopping and deleting all the links and share logs if you are able to do this.You should try this if it is not h/w or s/w exception.

    With above 2 logs it is possible to get some idea of what the real issue is.After this the rootcause has to be debugged.

    The common rootcauses  for crash we have seen are:

    1. S/W issue with customer application causing memory corruption.

    2. H/w issue related to AVS power supply on custom board.

    3. H/w issue related to DDR instability on custom board.

                    - Confirm you have done DDR byte wise s/w leveling on your board.

                    - Monitor the constant power supply line to DDR on your board for glitches.

                    - Review your board layout confirms to TI layout guidelines exactly and there is no violation.

    You can attempt further debug for rootcause once reason for crash is first determined.

     

  • Thanks for your so detailed reply.

    And I still have a question,in our App Code based on DVRRDK 3.0, if there is a while(1){} infinite loop in a thread,the M3 codec will hang.

    While(1) will cause CPU usge to more than 90%,a high cpu usage will make M3 Video Codec hang?

  • If you have a while(1) busy loop in your kernel module it will cause M3 to hang as A8 will stop processing Notify events.

    If you have a while(1) busy loop in a user space thread in your application it may cause the thread doing Venc_getFullBitStream buffer to never get scheduled.

    Both of these will cause no bitstream to be received from MCFW but M3 it actually not hung.As I mentioned share the logs .Do you get any Warning about commands not being processed by IpcBitsInLink ?

  • Using RDK3.0, we got crash on HDVICP(decode H264 stream ) without any decode errors,and we have AVS.

    What's wrong?