Changeset b4b534ac in mainline for uspace/lib/drv/include
- Timestamp:
- 2016-07-22T08:24:47Z (9 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- f76d2c2
- Parents:
- 5b18137 (diff), 8351f9a4 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- uspace/lib/drv/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/drv/include/ddf/driver.h
r5b18137 rb4b534ac 132 132 extern int ddf_fun_offline(ddf_fun_t *); 133 133 extern int ddf_fun_add_match_id(ddf_fun_t *, const char *, int); 134 extern void ddf_fun_set_ops(ddf_fun_t *, ddf_dev_ops_t *);134 extern void ddf_fun_set_ops(ddf_fun_t *, const ddf_dev_ops_t *); 135 135 extern void ddf_fun_set_conn_handler(ddf_fun_t *, async_port_handler_t); 136 136 extern int ddf_fun_add_to_category(ddf_fun_t *, const char *); -
uspace/lib/drv/include/usb_iface.h
r5b18137 rb4b534ac 42 42 #include <usb/usb.h> 43 43 44 int usb_get_my_address(async_exch_t *, usb_address_t *); 44 typedef async_sess_t usb_dev_session_t; 45 46 usb_dev_session_t *usb_dev_connect(devman_handle_t); 47 usb_dev_session_t *usb_dev_connect_to_self(ddf_dev_t *); 48 void usb_dev_disconnect(usb_dev_session_t *); 49 45 50 int usb_get_my_interface(async_exch_t *, int *); 46 int usb_get_hc_handle(async_exch_t *, devman_handle_t *); 51 int usb_get_my_device_handle(async_exch_t *, devman_handle_t *); 52 53 int usb_reserve_default_address(async_exch_t *, usb_speed_t); 54 int usb_release_default_address(async_exch_t *); 55 56 int usb_device_enumerate(async_exch_t *, unsigned port); 57 int usb_device_remove(async_exch_t *, unsigned port); 58 59 int usb_register_endpoint(async_exch_t *, usb_endpoint_t, usb_transfer_type_t, 60 usb_direction_t, size_t, unsigned, unsigned); 61 int usb_unregister_endpoint(async_exch_t *, usb_endpoint_t, usb_direction_t); 62 int usb_read(async_exch_t *, usb_endpoint_t, uint64_t, void *, size_t, size_t *); 63 int usb_write(async_exch_t *, usb_endpoint_t, uint64_t, const void *, size_t); 64 65 /** Callback for outgoing transfer. */ 66 typedef void (*usb_iface_transfer_out_callback_t)(int, void *); 67 68 /** Callback for incoming transfer. */ 69 typedef void (*usb_iface_transfer_in_callback_t)(int, size_t, void *); 47 70 48 71 /** USB device communication interface. */ 49 72 typedef struct { 50 int (*get_my_address)(ddf_fun_t *, usb_address_t *);51 73 int (*get_my_interface)(ddf_fun_t *, int *); 52 int (*get_hc_handle)(ddf_fun_t *, devman_handle_t *); 74 int (*get_my_device_handle)(ddf_fun_t *, devman_handle_t *); 75 76 int (*reserve_default_address)(ddf_fun_t *, usb_speed_t); 77 int (*release_default_address)(ddf_fun_t *); 78 79 int (*device_enumerate)(ddf_fun_t *, unsigned); 80 int (*device_remove)(ddf_fun_t *, unsigned); 81 82 int (*register_endpoint)(ddf_fun_t *, usb_endpoint_t, 83 usb_transfer_type_t, usb_direction_t, size_t, unsigned, unsigned); 84 int (*unregister_endpoint)(ddf_fun_t *, usb_endpoint_t, 85 usb_direction_t); 86 87 int (*read)(ddf_fun_t *, usb_endpoint_t, uint64_t, uint8_t *, size_t, 88 usb_iface_transfer_in_callback_t, void *); 89 int (*write)(ddf_fun_t *, usb_endpoint_t, uint64_t, const uint8_t *, 90 size_t, usb_iface_transfer_out_callback_t, void *); 53 91 } usb_iface_t; 54 92 -
uspace/lib/drv/include/usbhc_iface.h
r5b18137 rb4b534ac 44 44 #include <stdbool.h> 45 45 46 int usbhc_request_address(async_exch_t *, usb_address_t *, bool, usb_speed_t);47 int usbhc_bind_address(async_exch_t *, usb_address_t, devman_handle_t);48 int usbhc_get_handle(async_exch_t *, usb_address_t, devman_handle_t *);49 int usbhc_release_address(async_exch_t *, usb_address_t);50 int usbhc_register_endpoint(async_exch_t *, usb_address_t, usb_endpoint_t,51 usb_transfer_type_t, usb_direction_t, size_t, unsigned int);52 int usbhc_unregister_endpoint(async_exch_t *, usb_address_t, usb_endpoint_t,53 usb_direction_t);54 46 int usbhc_read(async_exch_t *, usb_address_t, usb_endpoint_t, 55 47 uint64_t, void *, size_t, size_t *); … … 58 50 59 51 /** Callback for outgoing transfer. */ 60 typedef void (*usbhc_iface_transfer_out_callback_t)( ddf_fun_t *,int, void *);52 typedef void (*usbhc_iface_transfer_out_callback_t)(int, void *); 61 53 62 54 /** Callback for incoming transfer. */ 63 typedef void (*usbhc_iface_transfer_in_callback_t)(ddf_fun_t *, 64 int, size_t, void *); 55 typedef void (*usbhc_iface_transfer_in_callback_t)(int, size_t, void *); 65 56 66 57 /** USB host controller communication interface. */ 67 58 typedef struct { 68 int (*request_address)(ddf_fun_t *, usb_address_t *, bool, usb_speed_t);69 int (*bind_address)(ddf_fun_t *, usb_address_t, devman_handle_t);70 int (*get_handle)(ddf_fun_t *, usb_address_t,71 devman_handle_t *);72 int (*release_address)(ddf_fun_t *, usb_address_t);73 74 int (*register_endpoint)(ddf_fun_t *,75 usb_address_t, usb_endpoint_t,76 usb_transfer_type_t, usb_direction_t, size_t, unsigned int);77 int (*unregister_endpoint)(ddf_fun_t *, usb_address_t, usb_endpoint_t,78 usb_direction_t);79 80 59 int (*read)(ddf_fun_t *, usb_target_t, uint64_t, uint8_t *, size_t, 81 60 usbhc_iface_transfer_in_callback_t, void *); 82 83 61 int (*write)(ddf_fun_t *, usb_target_t, uint64_t, const uint8_t *, 84 62 size_t, usbhc_iface_transfer_out_callback_t, void *);
Note:
See TracChangeset
for help on using the changeset viewer.