|
CFG_TUH_MEM_SECTION | TU_ATTR_ALIGNED (4096) |
|
static void | print_intr (uint32_t intr) |
|
TU_ATTR_WEAK bool | hcd_dcache_clean (void const *addr, uint32_t data_size) |
|
TU_ATTR_WEAK bool | hcd_dcache_invalidate (void const *addr, uint32_t data_size) |
|
TU_ATTR_WEAK bool | hcd_dcache_clean_invalidate (void const *addr, uint32_t data_size) |
|
static TU_ATTR_ALWAYS_INLINE ehci_qhd_t * | qhd_control (uint8_t dev_addr) |
|
static TU_ATTR_ALWAYS_INLINE ehci_qhd_t * | qhd_next (ehci_qhd_t const *p_qhd) |
|
static TU_ATTR_ALWAYS_INLINE ehci_qhd_t * | qhd_find_free (void) |
|
static ehci_qhd_t * | qhd_get_from_addr (uint8_t dev_addr, uint8_t ep_addr) |
|
static void | qhd_init (ehci_qhd_t *p_qhd, uint8_t dev_addr, tusb_desc_endpoint_t const *ep_desc) |
|
static void | qhd_attach_qtd (ehci_qhd_t *qhd, ehci_qtd_t *qtd) |
|
static void | qhd_remove_qtd (ehci_qhd_t *qhd) |
|
static TU_ATTR_ALWAYS_INLINE ehci_qtd_t * | qtd_control (uint8_t dev_addr) |
|
static TU_ATTR_ALWAYS_INLINE ehci_qtd_t * | qtd_find_free (void) |
|
static void | qtd_init (ehci_qtd_t *qtd, void const *buffer, uint16_t total_bytes) |
|
static TU_ATTR_ALWAYS_INLINE ehci_link_t * | list_get_period_head (uint8_t rhport, uint32_t interval_ms) |
|
static TU_ATTR_ALWAYS_INLINE ehci_qhd_t * | list_get_async_head (uint8_t rhport) |
|
static TU_ATTR_ALWAYS_INLINE void | list_insert (ehci_link_t *current, ehci_link_t *new, uint8_t new_type) |
|
static TU_ATTR_ALWAYS_INLINE ehci_link_t * | list_next (ehci_link_t const *p_link) |
|
static void | list_remove_qhd_by_daddr (ehci_link_t *list_head, uint8_t dev_addr) |
|
static void | ehci_disable_schedule (ehci_registers_t *regs, bool is_period) |
|
static void | ehci_enable_schedule (ehci_registers_t *regs, bool is_period) |
|
uint32_t | hcd_frame_number (uint8_t rhport) |
|
void | hcd_port_reset (uint8_t rhport) |
|
void | hcd_port_reset_end (uint8_t rhport) |
|
bool | hcd_port_connect_status (uint8_t rhport) |
|
tusb_speed_t | hcd_port_speed_get (uint8_t rhport) |
|
void | hcd_device_close (uint8_t rhport, uint8_t daddr) |
|
static void | init_periodic_list (uint8_t rhport) |
|
bool | ehci_init (uint8_t rhport, uint32_t capability_reg, uint32_t operatial_reg) |
|
static void | ehci_stop (uint8_t rhport) |
|
bool | hcd_edpt_open (uint8_t rhport, uint8_t dev_addr, tusb_desc_endpoint_t const *ep_desc) |
|
bool | hcd_setup_send (uint8_t rhport, uint8_t dev_addr, uint8_t const setup_packet[8]) |
|
bool | hcd_edpt_xfer (uint8_t rhport, uint8_t dev_addr, uint8_t ep_addr, uint8_t *buffer, uint16_t buflen) |
|
bool | hcd_edpt_abort_xfer (uint8_t rhport, uint8_t dev_addr, uint8_t ep_addr) |
|
bool | hcd_edpt_clear_stall (uint8_t rhport, uint8_t daddr, uint8_t ep_addr) |
|
static TU_ATTR_ALWAYS_INLINE void | async_advance_isr (uint8_t rhport) |
|
static TU_ATTR_ALWAYS_INLINE void | port_connect_status_change_isr (uint8_t rhport) |
|
static TU_ATTR_ALWAYS_INLINE void | qhd_xfer_complete_isr (ehci_qhd_t *qhd) |
|
static TU_ATTR_ALWAYS_INLINE void | proccess_async_xfer_isr (ehci_qhd_t *const list_head) |
|
static TU_ATTR_ALWAYS_INLINE void | process_period_xfer_isr (uint8_t rhport, uint32_t interval_ms) |
|
void | hcd_int_handler (uint8_t rhport, bool in_isr) |
|