34#include "common/tusb_common.h"
44typedef void (*tuh_xfer_cb_t)(
tuh_xfer_t* xfer);
66 tuh_xfer_cb_t complete_cb;
82 TUH_CFGID_RPI_PIO_USB_CONFIGURATION = OPT_MCU_RP2040 << 8
92TU_ATTR_WEAK
void tuh_mount_cb (uint8_t daddr);
98TU_ATTR_WEAK
void tuh_umount_cb(uint8_t daddr);
108bool tuh_configure(uint8_t controller_id, uint32_t cfg_id,
const void* cfg_param);
111bool tuh_init(uint8_t controller_id);
114bool tuh_inited(
void);
119void tuh_task_ext(uint32_t timeout_ms,
bool in_isr);
122TU_ATTR_ALWAYS_INLINE
static inline
125 tuh_task_ext(UINT32_MAX,
false);
129bool tuh_task_event_ready(
void);
132extern void hcd_int_handler(uint8_t rhport);
136#define tuh_int_handler hcd_int_handler
138bool tuh_vid_pid_get(uint8_t daddr, uint16_t* vid, uint16_t* pid);
143bool tuh_mounted(uint8_t daddr);
146TU_ATTR_ALWAYS_INLINE
static inline
147bool tuh_suspended(uint8_t daddr)
155TU_ATTR_ALWAYS_INLINE
static inline
156bool tuh_ready(uint8_t daddr)
158 return tuh_mounted(daddr) && !tuh_suspended(daddr);
180bool tuh_edpt_abort_xfer(uint8_t daddr, uint8_t ep_addr);
186bool tuh_configuration_set(uint8_t daddr, uint8_t config_num,
187 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
192bool tuh_interface_set(uint8_t daddr, uint8_t itf_num, uint8_t itf_alt,
193 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
201bool tuh_descriptor_get(uint8_t daddr, uint8_t type, uint8_t index,
void* buffer, uint16_t len,
202 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
206bool tuh_descriptor_get_device(uint8_t daddr,
void* buffer, uint16_t len,
207 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
211bool tuh_descriptor_get_configuration(uint8_t daddr, uint8_t index,
void* buffer, uint16_t len,
212 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
216bool tuh_descriptor_get_hid_report(uint8_t daddr, uint8_t itf_num, uint8_t desc_type, uint8_t index,
void* buffer, uint16_t len,
217 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
222bool tuh_descriptor_get_string(uint8_t daddr, uint8_t index, uint16_t language_id,
void* buffer, uint16_t len,
223 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
227bool tuh_descriptor_get_manufacturer_string(uint8_t daddr, uint16_t language_id,
void* buffer, uint16_t len,
228 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
232bool tuh_descriptor_get_product_string(uint8_t daddr, uint16_t language_id,
void* buffer, uint16_t len,
233 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
237bool tuh_descriptor_get_serial_string(uint8_t daddr, uint16_t language_id,
void* buffer, uint16_t len,
238 tuh_xfer_cb_t complete_cb, uintptr_t user_data);
246uint8_t tuh_descriptor_get_sync(uint8_t daddr, uint8_t type, uint8_t index,
void* buffer, uint16_t len);
250uint8_t tuh_descriptor_get_device_sync(uint8_t daddr,
void* buffer, uint16_t len);
254uint8_t tuh_descriptor_get_configuration_sync(uint8_t daddr, uint8_t index,
void* buffer, uint16_t len);
258uint8_t tuh_descriptor_get_hid_report_sync(uint8_t daddr, uint8_t itf_num, uint8_t desc_type, uint8_t index,
void* buffer, uint16_t len);
262uint8_t tuh_descriptor_get_string_sync(uint8_t daddr, uint8_t index, uint16_t language_id,
void* buffer, uint16_t len);
266uint8_t tuh_descriptor_get_manufacturer_string_sync(uint8_t daddr, uint16_t language_id,
void* buffer, uint16_t len);
270uint8_t tuh_descriptor_get_product_string_sync(uint8_t daddr, uint16_t language_id,
void* buffer, uint16_t len);
274uint8_t tuh_descriptor_get_serial_string_sync(uint8_t daddr, uint16_t language_id,
void* buffer, uint16_t len);
tusb_speed_t
defined base on EHCI specs value for Endpoint Speed
Definition tusb_types.h:48
AUDIO Channel Cluster Descriptor (4.1)
Definition audio.h:647