/* This function creates a sync object. 
The sync object is used for synchronization between different thread or ISR and a thread. */
OsiReturnVal_e osi_SyncObjCreate(OsiSyncObj_t *pSyncObj)
/* This function creates a sync object. 
The sync object is used for synchronization between different thread or ISR and a thread. */
OsiReturnVal_e osi_SyncObjCreate(OsiSyncObj_t *pSyncObj)
{
    SemaphoreHandle_t *pl_SyncObj = (SemaphoreHandle_t *)pSyncObj;
    *pl_SyncObj = xSemaphoreCreateBinary();
    ASSERT (*pSyncObj != NULL);
    return OSI_OK;
}