USBD_CtrlRx

Description

Receive data on control OUT endpoint.

Files

usbd_core.h/usbd_ep.c

Prototype

CPU_INT32U  USBD_CtrlRx (CPU_INT08U    dev_nbr,
                         void         *p_buf,
                         CPU_INT32U    buf_len,
                         CPU_INT16U    timeout_ms,
                         USBD_ERR     *p_err);


Arguments

dev_nbr

Device number.

p_buf

Pointer to buffer of data that will be sent

buf_len

Number of octets to transmit.

timeout_ms

Timeout in milliseconds.

p_err

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

USBD_ERR_NONE
USBD_ERR_DEV_INVALID_NBR
USBD_ERR_DEV_INVALID_STATE
USBD_ERR_EP_INVALID_ADDR
USBD_ERR_EP_INVALID_STATE
USBD_ERR_EP_INVALID_TYPE
USBD_ERR_OS_TIMEOUT
USBD_ERR_OS_ABORT
USBD_ERR_OS_FAIL

Returned Value

Number of octets received If no error(s).

0, otherwise.

Callers

Classes.

Application.

Notes / Warnings

This function can be only called from USB device class drivers during class specific setup request callbacks.