|
Data Structures |
struct | usb_endpoint_manager |
Defines |
#define | BANDWIDTH_AVAILABLE_USB11 ((BANDWIDTH_TOTAL_USB11 / 10) * 9) |
#define | BANDWIDTH_TOTAL_USB11 12000000 |
#define | LIBUSBHOST_HOST_YSB_ENDPOINT_MANAGER_H |
Functions |
size_t | bandwidth_count_usb11 (usb_speed_t speed, usb_transfer_type_t type, size_t size, size_t max_packet_size) |
static int | usb_endpoint_manager_add_ep (usb_endpoint_manager_t *instance, usb_address_t address, usb_endpoint_t endpoint, usb_direction_t direction, usb_transfer_type_t type, usb_speed_t speed, size_t max_packet_size, size_t data_size) |
void | usb_endpoint_manager_destroy (usb_endpoint_manager_t *instance) |
endpoint_t * | usb_endpoint_manager_get_ep (usb_endpoint_manager_t *instance, usb_address_t address, usb_endpoint_t ep, usb_direction_t direction, size_t *bw) |
int | usb_endpoint_manager_init (usb_endpoint_manager_t *instance, size_t available_bandwidth) |
int | usb_endpoint_manager_register_ep (usb_endpoint_manager_t *instance, endpoint_t *ep, size_t data_size) |
void | usb_endpoint_manager_reset_if_need (usb_endpoint_manager_t *instance, usb_target_t target, const uint8_t *data) |
| Check setup packet data for signs of toggle reset.
|
int | usb_endpoint_manager_unregister_ep (usb_endpoint_manager_t *instance, usb_address_t address, usb_endpoint_t ep, usb_direction_t direction) |
Typical USB host controller needs to keep track of various settings for each device that is connected to it. State of toggle bit, device speed etc. etc. This structure shall simplify the management.