Set up a URB for an isochronous transfer
 |
This function is still under development - its
synopsis and other details shown here may change
significantly! |
#include <sys/usbdi.h>
int usbd_setup_isochronous( struct usbd_urb *urb,
_uint32 flags,
_int32 frame,
void *addr,
_uint32 len );
This routine sets up a URB for an isochronous transfer.
- urb
- An opaque handle (from usbd_alloc_urb()).
- flags
- One of the following:
- URB_DIR_IN -- Specify incoming (device-to-PC) transfer.
- URB_DIR_OUT -- Specify outgoing (PC-to-device) transfer.
- URB_DIR_NONE -- Don't specify direction.
- URB_ISOCH_ASAP -- Allow transfer as soon as possible (overrides frame).
- URB_SHORT_XFER_OK -- Allow short transfers.
- frame
- The device frame number. This is ignored if URB_ISOCH_ASAP is set.
- addr
- Address for start of transfer -- you must
use the buffer allocated by usbd_alloc().
- len
- The length (in bytes) of the data transfer.
- EOK
- Success.
QNX 6, QNX 4
Safety: | |
Cancellation point |
No |
Interrupt handler |
No |
Signal handler |
No |
Thread |
Yes |
usbd_descriptor(),
usbd_feature(),
usbd_io(),
usbd_setup_bulk(),
usbd_setup_control(),
usbd_setup_interrupt(),
usbd_setup_vendor(),
usbd_status()