![]()  | 
![]()  | 
![]()  | 
![]()  | 
Set up a URB for a control transfer
![]()  | 
This function isn't currently implemented. To set up a URB for a control transfer, use usbd_setup_vendor() instead. | 
#include <sys/usbdi.h>
usbd_setup_control( struct usbd_urb *urb, 
                    uint32_t flags,
                    uint16_t request, 
                    uint16_t rtype,
                    uint16_t value, 
                    uint16_t index,
                    void *addr, 
                    uint32_t len );
You can optionally OR in the following:
ORed with one of the following:
libusbdi
This routine sets up a URB for a control transfer.
| Safety: | |
|---|---|
| Cancellation point | No | 
| Interrupt handler | No | 
| Signal handler | No | 
| Thread | Yes | 
To ensure that the correct physical address will be used, you must use the buffer allocated by usbd_alloc() for the addr parameter.
usbd_descriptor(), usbd_feature(), usbd_io(), usbd_setup_bulk(), usbd_setup_interrupt(), usbd_setup_isochronous(), usbd_setup_vendor(), usbd_status()
![]()  | 
![]()  | 
![]()  | 
![]()  |