USBD_OS_EP_SignalPend

Description

Waits for a signal/semaphore to become available.

Files

usbd_internal.h/usbd_os.c

Prototype

void  USBD_OS_EP_SignalPend (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.

Callers

Endpoints Rx/Tx functions.

Implementation guidelines

  1. A call to this function should pend on the signal / semaphore 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