8 #ifndef HPM_USB_DEVICE_H
9 #define HPM_USB_DEVICE_H
16 #include "hpm_soc_feature.h"
35 volatile uint32_t : 1;
39 volatile uint32_t : 2;
41 volatile uint32_t : 3;
44 volatile uint32_t : 0;
51 volatile uint8_t reserved[2];
61 volatile uint32_t : 2;
64 volatile uint32_t : 0;
80 volatile uint8_t reserved[16];
93 #if defined(__cplusplus)
173 #if defined(__cplusplus)
#define USB_SOC_DCD_QHD_BUFFER_COUNT
Definition: hpm_soc_feature.h:90
#define USB_SOS_DCD_MAX_QHD_COUNT
Definition: hpm_soc_feature.h:96
#define USB_SOC_DCD_MAX_QTD_COUNT
Definition: hpm_soc_feature.h:95
usb_control_request_t
Definition: hpm_usb_drv.h:125
bool usb_device_get_port_ccs(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:157
uint8_t usb_device_get_port_speed(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:119
uint32_t usb_device_get_setup_status(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:177
void usb_device_remote_wakeup(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:142
uint32_t usb_device_interrupts(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:114
void usb_device_disconnect(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:152
uint8_t usb_device_get_address(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:137
void usb_device_clear_edpt_complete_status(usb_device_handle_t *handle, uint32_t mask)
Definition: hpm_usb_device.c:172
void usb_device_edpt_stall(usb_device_handle_t *handle, uint8_t ep_addr)
Definition: hpm_usb_device.c:284
dcd_qhd_t * usb_device_qhd_get(usb_device_handle_t *handle, uint8_t ep_idx)
Definition: hpm_usb_device.c:37
void usb_device_edpt_clear_stall(usb_device_handle_t *handle, uint8_t ep_addr)
Definition: hpm_usb_device.c:289
void usb_device_clear_setup_status(usb_device_handle_t *handle, uint32_t mask)
Definition: hpm_usb_device.c:182
void usb_device_deinit(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:92
void usb_device_edpt_close_all(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:304
void usb_device_connect(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:147
bool usb_device_edpt_check_stall(usb_device_handle_t *handle, uint8_t ep_addr)
Definition: hpm_usb_device.c:294
uint32_t usb_device_status_flags(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:104
uint8_t usb_device_get_suspend_status(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:124
void usb_device_set_address(usb_device_handle_t *handle, uint8_t dev_addr)
Definition: hpm_usb_device.c:129
bool usb_device_get_port_reset_status(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:162
uint32_t usb_device_get_edpt_complete_status(usb_device_handle_t *handle)
Definition: hpm_usb_device.c:167
void usb_device_edpt_close(usb_device_handle_t *handle, uint8_t ep_addr)
Definition: hpm_usb_device.c:299
void usb_device_clear_status_flags(usb_device_handle_t *handle, uint32_t mask)
Definition: hpm_usb_device.c:109
bool usb_device_edpt_xfer(usb_device_handle_t *handle, uint8_t ep_addr, uint8_t *buffer, uint32_t total_bytes)
Definition: hpm_usb_device.c:220
void usb_device_bus_reset(usb_device_handle_t *handle, uint16_t ep0_max_packet_size)
Definition: hpm_usb_device.c:47
dcd_qtd_t * usb_device_qtd_get(usb_device_handle_t *handle, uint8_t ep_idx)
Definition: hpm_usb_device.c:42
bool usb_device_edpt_open(usb_device_handle_t *handle, usb_endpoint_config_t *config)
Definition: hpm_usb_device.c:191
bool usb_device_init(usb_device_handle_t *handle, uint32_t int_mask)
Definition: hpm_usb_device.c:65
Definition: hpm_usb_regs.h:12
Definition: hpm_usb_device.h:83
Definition: hpm_usb_device.h:55
volatile uint32_t int_on_setup
Definition: hpm_usb_device.h:59
volatile uint32_t max_packet_size
Definition: hpm_usb_device.h:60
volatile dcd_qtd_t qtd_overlay
Definition: hpm_usb_device.h:70
volatile usb_control_request_t setup_request
Definition: hpm_usb_device.h:73
volatile uint32_t iso_mult
Definition: hpm_usb_device.h:63
volatile uint32_t
Definition: hpm_usb_device.h:58
volatile uint32_t zero_length_termination
Definition: hpm_usb_device.h:62
volatile uint32_t qtd_addr
Definition: hpm_usb_device.h:67
Definition: hpm_usb_device.h:28
volatile uint32_t next
Definition: hpm_usb_device.h:30
volatile uint32_t xact_err
Definition: hpm_usb_device.h:34
volatile uint32_t active
Definition: hpm_usb_device.h:38
volatile uint32_t halted
Definition: hpm_usb_device.h:37
volatile uint32_t total_bytes
Definition: hpm_usb_device.h:43
volatile uint16_t expected_bytes
Definition: hpm_usb_device.h:50
volatile uint32_t int_on_complete
Definition: hpm_usb_device.h:42
volatile uint32_t buffer_err
Definition: hpm_usb_device.h:36
volatile uint32_t iso_mult_override
Definition: hpm_usb_device.h:40
volatile uint32_t
Definition: hpm_usb_device.h:33
Definition: hpm_usb_device.h:88
dcd_data_t * dcd_data
Definition: hpm_usb_device.h:90
USB_Type * regs
Definition: hpm_usb_device.h:89
Endpoint config structure.
Definition: hpm_usb_drv.h:130