![]() |
![]() |
![]() |
![]() |
Submit a previously set-up URB to the USB stack
#include <sys/usbdi.h>
int usbd_io( struct usbd_urb *urb,
struct usbd_pipe *pipe,
void (*func)(struct usbd_urb *,
struct usbd_pipe *, void *),
void *handle,
uint32_t timeout );
libusbdi
This routine submits a previously set-up URB to the USB stack. The URB would have been set up from one of these functions:
![]() |
For this release of the USB DDK, vendor requests are synchronous only. Therefore, the func parameter in usbd_io() must be NULL. |
The usbd_io() function is the one that actually makes the data transfer happen; the setup functions simply set up the URB for the data transfer.
| Safety: | |
|---|---|
| Cancellation point | Yes |
| Interrupt handler | No |
| Signal handler | No |
| Thread | Yes |
usbd_descriptor(), usbd_feature(), usbd_setup_control(), usbd_setup_bulk(), usbd_setup_interrupt(), usbd_setup_isochronous(), usbd_setup_vendor(), usbd_status()
![]() |
![]() |
![]() |
![]() |