aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShengYi Hung <aokblast@FreeBSD.org>2026-06-11 15:39:44 +0000
committerShengYi Hung <aokblast@FreeBSD.org>2026-06-22 13:54:31 +0000
commit1a8701e2e9a97cabb18ed58d236382796d7f7aa7 (patch)
tree45d805cbc2eebe6ec873025d14140b8818e73b12
parentfc6d7a7520d00943ab167544b145f404c10b406a (diff)
-rw-r--r--lib/libusb/Makefile1
-rw-r--r--lib/libusb/libusb20.311
-rw-r--r--lib/libusb/libusb20.c6
-rw-r--r--lib/libusb/libusb20.h1
4 files changed, 19 insertions, 0 deletions
diff --git a/lib/libusb/Makefile b/lib/libusb/Makefile
index 89cf600236cc..f11083c94c86 100644
--- a/lib/libusb/Makefile
+++ b/lib/libusb/Makefile
@@ -194,6 +194,7 @@ MLINKS += libusb20.3 libusb20_tr_get_actual_length.3
MLINKS += libusb20.3 libusb20_tr_get_max_frames.3
MLINKS += libusb20.3 libusb20_tr_get_max_packet_length.3
MLINKS += libusb20.3 libusb20_tr_get_max_total_length.3
+MLINKS += libusb20.3 libusb20_tr_get_flags.3
MLINKS += libusb20.3 libusb20_tr_get_status.3
MLINKS += libusb20.3 libusb20_tr_pending.3
MLINKS += libusb20.3 libusb20_tr_callback_wrapper.3
diff --git a/lib/libusb/libusb20.3 b/lib/libusb/libusb20.3
index a5213b1aa187..f2405e90ce7a 100644
--- a/lib/libusb/libusb20.3
+++ b/lib/libusb/libusb20.3
@@ -62,6 +62,8 @@ USB access library (libusb -lusb)
.Ft uint32_t
.Fn libusb20_tr_get_max_total_length "struct libusb20_transfer *xfer"
.Ft uint8_t
+.Fn libusb20_tr_get_flags "struct libusb20_transfer *xfer"
+.Ft uint8_t
.Fn libusb20_tr_get_status "struct libusb20_transfer *xfer"
.Ft uint8_t
.Fn libusb20_tr_pending "struct libusb20_transfer *xfer"
@@ -359,6 +361,15 @@ bound to.
.
.Pp
.
+.Fn libusb20_tr_get_flags
+will return the transfer flags of an USB transfer.
+.
+Flag values are defined by a set of LIBUSB20_TRANSFER_XXX enums and can
+be set using
+.Fn libusb20_tr_set_flags .
+.
+.Pp
+.
.Fn libusb20_tr_get_status
will return the status of an USB transfer.
.
diff --git a/lib/libusb/libusb20.c b/lib/libusb/libusb20.c
index 7b443e236cc2..2cd8a6ea7037 100644
--- a/lib/libusb/libusb20.c
+++ b/lib/libusb/libusb20.c
@@ -370,6 +370,12 @@ libusb20_tr_set_flags(struct libusb20_transfer *xfer, uint8_t flags)
return;
}
+uint8_t
+libusb20_tr_get_flags(struct libusb20_transfer *xfer)
+{
+ return (xfer->flags);
+}
+
uint32_t
libusb20_tr_get_length(struct libusb20_transfer *xfer, uint16_t frIndex)
{
diff --git a/lib/libusb/libusb20.h b/lib/libusb/libusb20.h
index a9bb3ec1647e..6a95042eda44 100644
--- a/lib/libusb/libusb20.h
+++ b/lib/libusb/libusb20.h
@@ -214,6 +214,7 @@ uint32_t libusb20_tr_get_actual_length(struct libusb20_transfer *xfer);
uint32_t libusb20_tr_get_max_frames(struct libusb20_transfer *xfer);
uint32_t libusb20_tr_get_max_packet_length(struct libusb20_transfer *xfer);
uint32_t libusb20_tr_get_max_total_length(struct libusb20_transfer *xfer);
+uint8_t libusb20_tr_get_flags(struct libusb20_transfer *xfer);
uint8_t libusb20_tr_get_status(struct libusb20_transfer *xfer);
uint8_t libusb20_tr_pending(struct libusb20_transfer *xfer);
void libusb20_tr_callback_wrapper(struct libusb20_transfer *xfer);