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.

DM8168 dvr_rdk demo. What is reason for AVSYNC warning



Hello friends,

please help me, not clearly understood what is reason for AVSYNC warning, that printed time to time from demo application:

 

[m3vpss ] AVSYNC:WallTime IGNORE Unexpected Discontinuity.PrevTs[159072]/CurTs[0]  

[m3vpss ] AVSYNC:WallTime IGNORE Unexpected Discontinuity.PrevTs[159072]/CurTs[0]  

[m3vpss ] AVSYNC:WallTime IGNORE Unexpected Discontinuity.PrevTs[159072]/CurTs[0]  

[m3vpss ] AVSYNC:WallTime IGNORE Unexpected Discontinuity.PrevTs[159071]/CurTs[0]

 

ThanX alot

  • Here is how Avsync Wall Time is updated:

    1. There a s/w time object maintained in shared memory.

    2.There is a periodic object on VPSS M3 that runs every 1ms and invokes a Avsync_wallTimeUpdate callback function

    3. Avsync_wallTimeUpdate will read a underlying H/W timer value and update the s/w time object with the elapsed time (normalized to ms).

    The underlying H/W timer can be DMTIMER or DucatiCTM timer and this is determined at build time by the macro

    #define AVSYNC_GET_HW_TIME()                              (Utils_getCurTimeInMsec())

    //#define AVSYNC_GET_HW_TIME()                              Utils_dmTimerGetCurTimeInMsec(SYSTEM_DMTIMER_ID);

    defined in /dvr_rdk/mcfw/src_bios6/links_m3vpss/avsync/avsync_m3vpss.h.

    During wallTime update the elasped time is expected to be in the range of 1ms .If there is a large difference in elapsed time (either +ve or -ve) a warning is printed and elapsed time is assumed to be 1ms. The warning in this case is occuring I guess because the DMTIMER is a 32bit register that runs at 27Mhz and wraps around every 2.65 minutes or so.We will fix this issue in the next RDK release but it should not have any functional impact.