pub type usbd_ctl_callback = Option<unsafe extern "C" fn(dev: *mut usbd_device, req: *mut usbd_ctlreq, callback: *mut usbd_rqc_callback) -> usbd_respond>;
Expand description

USB control callback function.

Uses for the control request processing. Some requests will be handled by core if callback don’t process it (returns FALSE).

  • If request was not processed STALL PID will be issued.
  • GET_CONFIGURATION
  • SET_CONFIGURATION (passes to [usbd_cfg_callback)]
  • GET_DESCRIPTOR (passes to [usbd_dsc_callback)]
  • GET_STATUS
  • SET_FEATURE, CLEAR_FEATURE (endpoints only)
  • SET_ADDRESS

Returns:

  • usbd_respond status.

Arguments

  • dev - [Direction: In] points to USB device
  • req - [Direction: In] points to usb control request
  • *callback - [Direction: In, Out] USB control transfer completion callback, default is NULL (no callback)