Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usbdev/include/usb/dev/pipes.h

    r8d2dd7f2 rbb655dab  
    4444
    4545#define CTRL_PIPE_MIN_PACKET_SIZE 8
     46
    4647/** Abstraction of a logical connection to USB device endpoint.
    47  * It encapsulates endpoint attributes (transfer type etc.).
     48 * It contains some vital information about the pipe.
    4849 * This endpoint must be bound with existing usb_device_connection_t
    4950 * (i.e. the wire to send data over).
    5051 */
    5152typedef struct {
    52         /** Endpoint number. */
    53         usb_endpoint_t endpoint_no;
    54 
    55         /** Endpoint transfer type. */
    56         usb_transfer_type_t transfer_type;
    57 
    58         /** Endpoint direction. */
    59         usb_direction_t direction;
    60 
    61         /** Maximum packet size for the endpoint. */
    62         size_t max_packet_size;
    63 
    64         /** Number of packets per frame/uframe.
    65          * Only valid for HS INT and ISO transfers. All others should set to 1*/
    66         unsigned packets;
     53        /** Pipe description received from HC */
     54        usb_pipe_desc_t desc;
    6755
    6856        /** Whether to automatically reset halt on the endpoint.
     
    7058         */
    7159        bool auto_reset_halt;
    72 
    7360        /** The connection used for sending the data. */
    7461        usb_dev_session_t *bus_session;
     
    10390        /** Found descriptor fitting the description. */
    10491        const usb_standard_endpoint_descriptor_t *descriptor;
     92        /** Relevant superspeed companion descriptor. */
     93        const usb_superspeed_endpoint_companion_descriptor_t *companion_descriptor;
    10594        /** Interface descriptor the endpoint belongs to. */
    10695        const usb_standard_interface_descriptor_t *interface;
     
    10998} usb_endpoint_mapping_t;
    11099
    111 int usb_pipe_initialize(usb_pipe_t *, usb_endpoint_t, usb_transfer_type_t,
    112     size_t, usb_direction_t, unsigned, usb_dev_session_t *);
     100int usb_pipe_initialize(usb_pipe_t *, usb_dev_session_t *);
    113101int usb_pipe_initialize_default_control(usb_pipe_t *, usb_dev_session_t *);
    114102
    115 int usb_pipe_probe_default_control(usb_pipe_t *);
    116103int usb_pipe_initialize_from_configuration(usb_endpoint_mapping_t *,
    117104    size_t, const uint8_t *, size_t, usb_dev_session_t *);
    118105
    119 int usb_pipe_register(usb_pipe_t *, unsigned);
     106int usb_pipe_register(usb_pipe_t *, const usb_standard_endpoint_descriptor_t *, const usb_superspeed_endpoint_companion_descriptor_t *);
    120107int usb_pipe_unregister(usb_pipe_t *);
    121108
Note: See TracChangeset for help on using the changeset viewer.