Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/drv/include/usb_iface.h

    r58563585 r9d58539  
    4242#include <usb/usb.h>
    4343
    44 typedef async_sess_t usb_dev_session_t;
    45 
    46 extern usb_dev_session_t *usb_dev_connect(devman_handle_t);
    47 extern usb_dev_session_t *usb_dev_connect_to_self(ddf_dev_t *);
    48 extern void usb_dev_disconnect(usb_dev_session_t *);
    49 
    50 extern int usb_get_my_interface(async_exch_t *, int *);
    51 extern int usb_get_my_device_handle(async_exch_t *, devman_handle_t *);
    52 
    53 extern int usb_reserve_default_address(async_exch_t *, usb_speed_t);
    54 extern int usb_release_default_address(async_exch_t *);
    55 
    56 extern int usb_device_enumerate(async_exch_t *, unsigned port);
    57 extern int usb_device_remove(async_exch_t *, unsigned port);
    58 
    59 extern int usb_register_endpoint(async_exch_t *, usb_endpoint_t,
    60     usb_transfer_type_t, usb_direction_t, size_t, unsigned, unsigned);
    61 extern int usb_unregister_endpoint(async_exch_t *, usb_endpoint_t,
    62     usb_direction_t);
    63 extern int usb_read(async_exch_t *, usb_endpoint_t, uint64_t, void *, size_t,
    64     size_t *);
    65 extern int usb_write(async_exch_t *, usb_endpoint_t, uint64_t, const void *,
    66     size_t);
    67 
    68 /** Callback for outgoing transfer. */
    69 typedef void (*usb_iface_transfer_out_callback_t)(int, void *);
    70 
    71 /** Callback for incoming transfer. */
    72 typedef void (*usb_iface_transfer_in_callback_t)(int, size_t, void *);
     44int usb_get_my_address(async_exch_t *, usb_address_t *);
     45int usb_get_my_interface(async_exch_t *, int *);
     46int usb_get_hc_handle(async_exch_t *, devman_handle_t *);
    7347
    7448/** USB device communication interface. */
    7549typedef struct {
     50        int (*get_my_address)(ddf_fun_t *, usb_address_t *);
    7651        int (*get_my_interface)(ddf_fun_t *, int *);
    77         int (*get_my_device_handle)(ddf_fun_t *, devman_handle_t *);
    78 
    79         int (*reserve_default_address)(ddf_fun_t *, usb_speed_t);
    80         int (*release_default_address)(ddf_fun_t *);
    81 
    82         int (*device_enumerate)(ddf_fun_t *, unsigned);
    83         int (*device_remove)(ddf_fun_t *, unsigned);
    84 
    85         int (*register_endpoint)(ddf_fun_t *, usb_endpoint_t,
    86             usb_transfer_type_t, usb_direction_t, size_t, unsigned, unsigned);
    87         int (*unregister_endpoint)(ddf_fun_t *, usb_endpoint_t,
    88             usb_direction_t);
    89 
    90         int (*read)(ddf_fun_t *, usb_endpoint_t, uint64_t, uint8_t *, size_t,
    91             usb_iface_transfer_in_callback_t, void *);
    92         int (*write)(ddf_fun_t *, usb_endpoint_t, uint64_t, const uint8_t *,
    93             size_t, usb_iface_transfer_out_callback_t, void *);
     52        int (*get_hc_handle)(ddf_fun_t *, devman_handle_t *);
    9453} usb_iface_t;
    9554
Note: See TracChangeset for help on using the changeset viewer.