/* time stamp Update This function updates (adds/subtracts) with the value specified in the Timestamp High Update and Timestamp Low Update register.  */
s32 synopGMAC_TS_timestamp_update(synopGMACdevice *gmacdev, u32 high_value, u32 low_value)
/* time stamp Update This function updates (adds/subtracts) with the value specified in the Timestamp High Update and Timestamp Low Update register.  */
s32 synopGMAC_TS_timestamp_update(synopGMACdevice *gmacdev, u32 high_value, u32 low_value)
{
    u32 loop_variable;
    synopGMACWriteReg(gmacdev->MacBase, GmacTSHighUpdate, high_value);
    synopGMACWriteReg(gmacdev->MacBase, GmacTSLowUpdate, low_value);
    for (loop_variable = 0; loop_variable < DEFAULT_LOOP_VARIABLE; loop_variable++)
    {
        if (!((synopGMACReadReg(gmacdev->MacBase, GmacTSControl)) & GmacTSUPDT))
        {
            break;
        }
        plat_delay(DEFAULT_DELAY_VARIABLE);
    }
    if (loop_variable < DEFAULT_LOOP_VARIABLE)
        synopGMACSetBits(gmacdev->MacBase, GmacTSControl, GmacTSUPDT);
    else
    {
        TR("Error::: The TSADDREG bit is not getting cleared !!!!!!\n");
        return -ESYNOPGMACPHYERR;
    }
    return -ESYNOPGMACNOERR;
}