USBD_OS_EP_LockCreate
Description
Create an OS resource to use as an endpoint lock.
Files
usbd_internal.h/usbd_os.c
Prototype
void USBD_OS_EP_LockCreate (CPU_INT08U dev_nbr,
CPU_INT08U ep_ix,
USBD_ERR *p_err);
Arguments
dev_nbr
Device number.
ep_ix
Endpoint index.
p_err
Pointer to variable that will receive the return error code from this function.
Returned Value
None.
Callers
Endpoints open functions.
Implementation guidelines
- The purpose of this function is to allocate a lock (mutex or semaphore) for the specified endpoint.
- Typically, the RTOS layer code should create a two-dimensional array to store the lock handlers. The
dev_nbrandep_ixare used to index this array. dev_nbrranges between 0 andUSBD_CFG_MAX_NBR_DEV.ep_ixranges between 0 andUSBD_CFG_MAX_NBR_EP_OPEN.- In case the creation fails,
USBD_ERR_OS_SIGNAL_CREATEshould be assigned top_err. Otherwise,USBD_ERR_NONEshould be assigned top_err.
, multiple selections available,