summaryrefslogtreecommitdiff
path: root/src/host/usbh_classdriver.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/host/usbh_classdriver.h')
-rw-r--r--src/host/usbh_classdriver.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/host/usbh_classdriver.h b/src/host/usbh_classdriver.h
index 0435eae70..30e97535d 100644
--- a/src/host/usbh_classdriver.h
+++ b/src/host/usbh_classdriver.h
@@ -66,8 +66,16 @@ void usbh_int_set(bool enabled);
// Open an endpoint
bool usbh_edpt_open(uint8_t rhport, uint8_t dev_addr, tusb_desc_endpoint_t const * desc_ep);
-// Submit a usb transfer
-bool usbh_edpt_xfer(uint8_t dev_addr, uint8_t ep_addr, uint8_t * buffer, uint16_t total_bytes);
+// Submit a usb transfer with callback support, require CFG_TUH_API_EDPT_XFER
+bool usbh_edpt_xfer_with_callback(uint8_t dev_addr, uint8_t ep_addr, uint8_t * buffer, uint16_t total_bytes,
+ tuh_xfer_cb_t complete_cb, uintptr_t user_data);
+
+TU_ATTR_ALWAYS_INLINE
+static inline bool usbh_edpt_xfer(uint8_t dev_addr, uint8_t ep_addr, uint8_t * buffer, uint16_t total_bytes)
+{
+ return usbh_edpt_xfer_with_callback(dev_addr, ep_addr, buffer, total_bytes, NULL, 0);
+}
+
// Claim an endpoint before submitting a transfer.
// If caller does not make any transfer, it must release endpoint for others.