summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
authorHa Thach <[email protected]>2021-08-20 22:21:30 +0700
committerGitHub <[email protected]>2021-08-20 22:21:30 +0700
commit58477b71f2989bc24480cb6e90dfd61506ec0ccd (patch)
treed4ae041de9cf357208d8afc39eb91dc3ddeca28e /src/common
parentaab133ac69aaf371b5270850588e5d1cd6fb6de1 (diff)
parentbeb1a5c678dd50c3142d2c74a29e92affa0b06c9 (diff)
Merge pull request #1035 from hathach/improve-host-stack
Improve host stack
Diffstat (limited to 'src/common')
-rw-r--r--src/common/tusb_common.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/common/tusb_common.h b/src/common/tusb_common.h
index c8a66a879..c2356ffee 100644
--- a/src/common/tusb_common.h
+++ b/src/common/tusb_common.h
@@ -73,6 +73,23 @@
#include "tusb_error.h" // TODO remove
#include "tusb_timeout.h" // TODO remove
+//--------------------------------------------------------------------+
+// Internal Helper used by Host and Device Stack
+//--------------------------------------------------------------------+
+
+// Check if endpoint descriptor is valid per USB specs
+bool tu_edpt_validate(tusb_desc_endpoint_t const * desc_ep, tusb_speed_t speed);
+
+// Bind all endpoint of a interface descriptor to class driver
+void tu_edpt_bind_driver(uint8_t ep2drv[][2], tusb_desc_interface_t const* p_desc, uint16_t desc_len, uint8_t driver_id);
+
+// Calculate total length of n interfaces (depending on IAD)
+uint16_t tu_desc_get_interface_total_len(tusb_desc_interface_t const* desc_itf, uint8_t itf_count, uint16_t max_len);
+
+//--------------------------------------------------------------------+
+// Internal Inline Functions
+//--------------------------------------------------------------------+
+
//------------- Mem -------------//
#define tu_memclr(buffer, size) memset((buffer), 0, (size))
#define tu_varclr(_var) tu_memclr(_var, sizeof(*(_var)))