USBD_OS_EP_LockAcquire

Description

Wait for an endpoint to become available and acquire its lock.

Files

usbd_internal.h/usbd_os.c

Prototype

void  USBD_OS_EP_LockAcquire (CPU_INT08U   dev_nbr,
                              CPU_INT08U   ep_ix,
                              CPU_INT16U   timeout_ms,
                              USBD_ERR    *p_err);


Arguments

dev_nbr

Device number.

ep_ix

Endpoint index.

timeout_ms

Timeout in milliseconds.

p_err

Pointer to variable that will receive the return error code from this function.

Returned Value

None.

Implementation guidelines

  1. A call to this function should pend on the lock associated to the specified endpoint.
  2. Following table describes the error codes that should be assigned to p_err depending on the operation result.

Table - Error code for pend operations
Operation resultError code
No error.USBD_ERR_NONE
Pend timeoutUSBD_ERR_OS_TIMEOUT
Pend abortedUSBD_ERR_OS_ABORT
Pend failed for any other reasonUSBD_ERR_OS_FAIL