44#ifndef CFG_TUH_ENDPOINT_MAX 
   45  #define CFG_TUH_ENDPOINT_MAX   16 
   57  HCD_EVENT_DEVICE_ATTACH,
 
   58  HCD_EVENT_DEVICE_REMOVE,
 
   59  HCD_EVENT_XFER_COMPLETE,
 
  121bool hcd_configure(uint8_t rhport, uint32_t cfg_id, 
const void* cfg_param);
 
  196TU_ATTR_ALWAYS_INLINE 
static inline 
  200  event.event_id            = HCD_EVENT_DEVICE_ATTACH;
 
  201  event.connection.hub_addr = 0;
 
  202  event.connection.hub_port = 0;
 
 
  208TU_ATTR_ALWAYS_INLINE 
static inline 
  212  event.event_id            = HCD_EVENT_DEVICE_REMOVE;
 
  213  event.connection.hub_addr = 0;
 
  214  event.connection.hub_port = 0;
 
 
  220TU_ATTR_ALWAYS_INLINE 
static inline 
  224    .event_id = HCD_EVENT_XFER_COMPLETE,
 
  228  event.xfer_complete.result = result;
 
  229  event.xfer_complete.len = xferred_bytes;
 
 
static void xfer_complete(xfer_ctl_t *xfer, uint8_t result, bool in_isr)
 
bool hcd_dcache_invalidate(void const *addr, uint32_t data_size) TU_ATTR_WEAK
 
static TU_ATTR_ALWAYS_INLINE void hcd_event_device_remove(uint8_t rhport, bool in_isr)
 
static TU_ATTR_ALWAYS_INLINE void hcd_event_xfer_complete(uint8_t dev_addr, uint8_t ep_addr, uint32_t xferred_bytes, xfer_result_t result, bool in_isr)
 
void hcd_int_disable(uint8_t rhport)
 
bool hcd_configure(uint8_t rhport, uint32_t cfg_id, const void *cfg_param)
 
bool hcd_dcache_clean_invalidate(void const *addr, uint32_t data_size) TU_ATTR_WEAK
 
bool hcd_edpt_open(uint8_t rhport, uint8_t daddr, tusb_desc_endpoint_t const *ep_desc)
 
bool hcd_dcache_clean(void const *addr, uint32_t data_size) TU_ATTR_WEAK
 
bool hcd_edpt_clear_stall(uint8_t rhport, uint8_t dev_addr, uint8_t ep_addr)
 
bool hcd_deinit(uint8_t rhport)
 
void hcd_int_enable(uint8_t rhport)
 
void hcd_device_close(uint8_t rhport, uint8_t dev_addr)
 
bool hcd_edpt_abort_xfer(uint8_t rhport, uint8_t dev_addr, uint8_t ep_addr)
 
static TU_ATTR_ALWAYS_INLINE void hcd_event_device_attach(uint8_t rhport, bool in_isr)
 
void hcd_devtree_get_info(uint8_t dev_addr, hcd_devtree_info_t *devtree_info)
 
void hcd_port_reset_end(uint8_t rhport)
 
void hcd_event_handler(hcd_event_t const *event, bool in_isr)
 
bool hcd_setup_send(uint8_t rhport, uint8_t daddr, uint8_t const setup_packet[8])
 
void hcd_port_reset(uint8_t rhport)
 
bool hcd_port_connect_status(uint8_t rhport)
 
uint32_t hcd_frame_number(uint8_t rhport)
 
tusb_speed_t hcd_port_speed_get(uint8_t rhport)
 
bool hcd_edpt_xfer(uint8_t rhport, uint8_t daddr, uint8_t ep_addr, uint8_t *buffer, uint16_t buflen)
 
void hcd_int_handler(uint8_t rhport, bool in_isr)
 
bool hcd_init(uint8_t rhport, const tusb_rhport_init_t *rh_init)
 
struct hcd_event_t::@170367111370005324060037246070123245370173324163::@133035252345363200345046204233043133257221026262 xfer_complete
 
tusb_speed_t
defined base on EHCI specs value for Endpoint Speed
 
struct TU_ATTR_PACKED tusb_desc_endpoint_t
USB Endpoint Descriptor.