#include <sys/types.h>
#include <usb/usb.h>
#include <usb/hc.h>
#include <usb/descriptor.h>
#include <ipc/devman.h>
#include <ddf/driver.h>
#include <fibril_synch.h>
Go to the source code of this file.
| Data Structures | |
| struct | usb_device_connection_t | 
| Abstraction of a physical connection to the device.  More... | |
| struct | usb_endpoint_description_t | 
| Description of endpoint characteristics.  More... | |
| struct | usb_endpoint_mapping_t | 
| Mapping of endpoint pipes and endpoint descriptions.  More... | |
| struct | usb_pipe_t | 
| Abstraction of a logical connection to USB device endpoint.  More... | |
| Functions | |
| int | usb_device_connection_initialize (usb_device_connection_t *connection, devman_handle_t host_controller_handle, usb_address_t device_address) | 
| Initialize connection to USB device. | |
| int | usb_device_connection_initialize_from_device (usb_device_connection_t *connection, ddf_dev_t *dev) | 
| Initialize connection to USB device. | |
| int | usb_device_connection_initialize_on_default_address (usb_device_connection_t *dev_connection, usb_hc_connection_t *hc_connection) | 
| Initialize connection to USB device on default address. | |
| int | usb_device_get_assigned_interface (ddf_dev_t *device) | 
| Tell USB interface assigned to given device. | |
| int | usb_pipe_control_read (usb_pipe_t *pipe, void *setup_buffer, size_t setup_buffer_size, void *data_buffer, size_t data_buffer_size, size_t *data_transfered_size) | 
| Request a control read transfer on an endpoint pipe. | |
| int | usb_pipe_control_write (usb_pipe_t *pipe, void *setup_buffer, size_t setup_buffer_size, void *data_buffer, size_t data_buffer_size) | 
| Request a control write transfer on an endpoint pipe. | |
| void | usb_pipe_end_long_transfer (usb_pipe_t *pipe) | 
| Terminate a long transfer on a pipe. | |
| int | usb_pipe_initialize (usb_pipe_t *pipe, usb_device_connection_t *connection, usb_endpoint_t endpoint_no, usb_transfer_type_t transfer_type, size_t max_packet_size, usb_direction_t direction) | 
| Initialize USB endpoint pipe. | |
| int | usb_pipe_initialize_default_control (usb_pipe_t *pipe, usb_device_connection_t *connection) | 
| Initialize USB endpoint pipe as the default zero control pipe. | |
| int | usb_pipe_initialize_from_configuration (usb_endpoint_mapping_t *mapping, size_t mapping_count, uint8_t *configuration_descriptor, size_t configuration_descriptor_size, usb_device_connection_t *connection) | 
| Initialize endpoint pipes from configuration descriptor. | |
| int | usb_pipe_probe_default_control (usb_pipe_t *pipe) | 
| Probe default control pipe for max packet size. | |
| int | usb_pipe_read (usb_pipe_t *pipe, void *buffer, size_t size, size_t *size_transfered) | 
| Request a read (in) transfer on an endpoint pipe. | |
| int | usb_pipe_register (usb_pipe_t *pipe, unsigned int interval, usb_hc_connection_t *hc_connection) | 
| Register endpoint with the host controller. | |
| int | usb_pipe_register_with_speed (usb_pipe_t *pipe, usb_speed_t speed, unsigned int interval, usb_hc_connection_t *hc_connection) | 
| Register endpoint with a speed at the host controller. | |
| void | usb_pipe_start_long_transfer (usb_pipe_t *pipe) | 
| Prepare pipe for a long transfer. | |
| int | usb_pipe_unregister (usb_pipe_t *pipe, usb_hc_connection_t *hc_connection) | 
| Revert endpoint registration with the host controller. | |
| int | usb_pipe_write (usb_pipe_t *pipe, void *buffer, size_t size) | 
| Request a write (out) transfer on an endpoint pipe. | |
Definition in file pipes.h.
 1.4.7
 1.4.7