USBD_MSC_OS_CommSignalPend

USBD_MSC_OS_CommSignalPend

Description

Wait on a semaphore to become available for MSC communication.

Files

usbd_msc_os.h / usbd_msc_os.c

Prototype

void USBD_MSC_OS_CommSignalPend (CPU_INT08U class_nbr, CPU_INT32U timeout, USBD_ERR *p_err);



Arguments

class_nbr

MSC instance class number.

timeout

Timeout in milliseconds.

p_err

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

USBD_ERR_NONE

USBD_ERR_OS_TIMEOUT

USBD_ERR_OS_FAIL

Returned Value

None.

Callers

Mass Storage Class.

Implementation Guidelines

The lock operation typically consists in pending on a semaphore. If the semaphore is free, the task continues normally its execution, otherwise it waits until another task releases the semaphore. p_err argument should be assigned as described in following table.

Table - Error code assignment according to pend operation result

Operation result

Error code to assign

No error

USBD_ERR_NONE

Pend aborted

USBD_ERR_OS_ABORT

Pend failed for any other reason

USBD_ERR_OS_FAIL