/* This function creates a locking object. 
The locking object is used for protecting a shared resources between different threads. */
OsiReturnVal_e osi_LockObjCreate(OsiLockObj_t *pLockObj)
/* This function creates a locking object. 
The locking object is used for protecting a shared resources between different threads. */
OsiReturnVal_e osi_LockObjCreate(OsiLockObj_t *pLockObj)
{
    SemaphoreHandle_t *pl_LockObj = (SemaphoreHandle_t *)pLockObj;
    vSemaphoreCreateBinary(*pl_LockObj);
    ASSERT (*pLockObj != NULL);
    return OSI_OK;
}