Control transfer state tracking. More...
Data Fields | |
enum control_stage_t | stage |
Stage the request is currently in. | |
const struct usb_setup_packet_t * | req |
Setup request that is currently being handled. | |
void * | data |
Data to be transmitted to/from the host. | |
uint16_t | data_length |
Total length of data. | |
uint16_t | data_done |
Transmitted length of data. | |
void(* | callback_data )(struct control_transfer_t *transfer) |
void(* | callback_handshake )(struct control_transfer_t *transfer) |
Function to be called after the ZLP handshake is sent/received. | |
void(* | callback_cancel )(struct control_transfer_t *transfer) |
Cleanup function to be called when the transfer is cancelled. | |
Control transfer state tracking.
void(* control_transfer_t::callback_data) (struct control_transfer_t *transfer) |
Function to be called when new data is received or sent. When the transfer is completed, this callback should move the transfer into the handshake phase.