diff options
| author | ShengYi Hung <aokblast@FreeBSD.org> | 2025-07-09 11:27:26 +0000 |
|---|---|---|
| committer | ShengYi Hung <aokblast@FreeBSD.org> | 2025-07-21 06:16:41 +0000 |
| commit | 3eda34934097f5cbf1e4a91d3b7acb58904be85e (patch) | |
| tree | 69aec4025821c53bd34c3ecbad16cb3885e89951 /lib/libusb | |
| parent | 776e26f56832cb25dc70713acfb579bda6105024 (diff) | |
Diffstat (limited to 'lib/libusb')
| -rw-r--r-- | lib/libusb/libusb.h | 1 | ||||
| -rw-r--r-- | lib/libusb/libusb10.c | 1 | ||||
| -rw-r--r-- | lib/libusb/libusb10_io.c | 13 |
3 files changed, 15 insertions, 0 deletions
diff --git a/lib/libusb/libusb.h b/lib/libusb/libusb.h index 57478c1787ee..1803ff637738 100644 --- a/lib/libusb/libusb.h +++ b/lib/libusb/libusb.h @@ -122,6 +122,7 @@ enum libusb_transfer_type { LIBUSB_TRANSFER_TYPE_ISOCHRONOUS = 1, LIBUSB_TRANSFER_TYPE_BULK = 2, LIBUSB_TRANSFER_TYPE_INTERRUPT = 3, + LIBUSB_TRANSFER_TYPE_BULK_STREAM = 4, }; enum libusb_standard_request { diff --git a/lib/libusb/libusb10.c b/lib/libusb/libusb10.c index 6bfc01eb8c4e..5c116b39ea17 100644 --- a/lib/libusb/libusb10.c +++ b/lib/libusb/libusb10.c @@ -1530,6 +1530,7 @@ found: libusb20_tr_set_callback(pxfer0, libusb10_isoc_proxy); break; case LIBUSB_TRANSFER_TYPE_BULK: + case LIBUSB_TRANSFER_TYPE_BULK_STREAM: case LIBUSB_TRANSFER_TYPE_INTERRUPT: libusb20_tr_set_callback(pxfer0, libusb10_bulk_intr_proxy); break; diff --git a/lib/libusb/libusb10_io.c b/lib/libusb/libusb10_io.c index ea365162df5a..c99586ff650d 100644 --- a/lib/libusb/libusb10_io.c +++ b/lib/libusb/libusb10_io.c @@ -781,6 +781,19 @@ libusb_fill_interrupt_transfer(struct libusb_transfer *transfer, } void +libusb_fill_bulk_stream_transfer(struct libusb_transfer *transfer, + libusb_device_handle *dev_handle, unsigned char endpoint, + uint32_t stream_id, unsigned char *buffer, int length, + libusb_transfer_cb_fn callback, void *user_data, unsigned int timeout) +{ + libusb_fill_bulk_transfer(transfer, dev_handle, endpoint, buffer, + length, callback, user_data, timeout); + transfer->type = LIBUSB_TRANSFER_TYPE_BULK_STREAM; + + libusb_transfer_set_stream_id(transfer, stream_id); +} + +void libusb_fill_iso_transfer(struct libusb_transfer *transfer, libusb_device_handle *devh, uint8_t endpoint, uint8_t *buf, int length, int npacket, libusb_transfer_cb_fn callback, |
