summaryrefslogtreecommitdiff
path: root/src/device/usbd.c
diff options
context:
space:
mode:
authorMengsk <[email protected]>2022-12-29 19:19:27 +0100
committerMengsk <[email protected]>2022-12-29 19:19:27 +0100
commitfe8c170c98c40a2fb517cbeaa49336b5af572c0f (patch)
treef3309f0109ba72dc5373ad82d5229b7a0d6d1549 /src/device/usbd.c
parentcece59df22cdd6d07f49676ff356a781d4536245 (diff)
Add dcd_edpt_iso_alloc() / dcd_edpt_iso_activate() for ISO EP buffer management.
Diffstat (limited to 'src/device/usbd.c')
-rw-r--r--src/device/usbd.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/device/usbd.c b/src/device/usbd.c
index f652a878e..8b5e4d745 100644
--- a/src/device/usbd.c
+++ b/src/device/usbd.c
@@ -1380,4 +1380,23 @@ void usbd_sof_enable(uint8_t rhport, bool en)
dcd_sof_enable(rhport, en);
}
+bool usbd_edpt_iso_alloc(uint8_t rhport, uint8_t ep_addr, uint16_t largest_packet_size)
+{
+ rhport = _usbd_rhport;
+
+ TU_ASSERT(tu_edpt_number(ep_addr) < CFG_TUD_ENDPPOINT_MAX);
+
+ return dcd_edpt_iso_alloc(rhport, ep_addr, largest_packet_size);
+}
+
+bool usbd_edpt_iso_activate(uint8_t rhport, tusb_desc_endpoint_t const * desc_ep)
+{
+ rhport = _usbd_rhport;
+
+ TU_ASSERT(tu_edpt_number(desc_ep->bEndpointAddress) < CFG_TUD_ENDPPOINT_MAX);
+ TU_ASSERT(tu_edpt_validate(desc_ep, (tusb_speed_t) _usbd_dev.speed));
+
+ return dcd_edpt_iso_activate(rhport, desc_ep);
+}
+
#endif