Changeset b7fd2a0 in mainline for uspace/lib/usbhost/include
- Timestamp:
- 2018-01-13T03:10:29Z (8 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- a53ed3a
- Parents:
- 36f0738
- Location:
- uspace/lib/usbhost/include/usb/host
- Files:
-
- 5 edited
-
ddf_helpers.h (modified) (2 diffs)
-
hcd.h (modified) (2 diffs)
-
usb_bus.h (modified) (3 diffs)
-
usb_transfer_batch.h (modified) (2 diffs)
-
utils/malloc32.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/usbhost/include/usb/host/ddf_helpers.h
r36f0738 rb7fd2a0 45 45 #include <device/hw_res_parsed.h> 46 46 47 typedef int (*driver_init_t)(hcd_t *, const hw_res_list_parsed_t *, bool);47 typedef errno_t (*driver_init_t)(hcd_t *, const hw_res_list_parsed_t *, bool); 48 48 typedef void (*driver_fini_t)(hcd_t *); 49 typedef int (*claim_t)(ddf_dev_t *);50 typedef int (*irq_code_gen_t)(irq_code_t *, const hw_res_list_parsed_t *, int *);49 typedef errno_t (*claim_t)(ddf_dev_t *); 50 typedef errno_t (*irq_code_gen_t)(irq_code_t *, const hw_res_list_parsed_t *, int *); 51 51 52 52 typedef struct { … … 61 61 } ddf_hc_driver_t; 62 62 63 int hcd_ddf_add_hc(ddf_dev_t *device, const ddf_hc_driver_t *driver);63 errno_t hcd_ddf_add_hc(ddf_dev_t *device, const ddf_hc_driver_t *driver); 64 64 65 int hcd_ddf_setup_hc(ddf_dev_t *device, usb_speed_t max_speed,65 errno_t hcd_ddf_setup_hc(ddf_dev_t *device, usb_speed_t max_speed, 66 66 size_t bw, bw_count_func_t bw_count); 67 67 void hcd_ddf_clean_hc(ddf_dev_t *device); 68 int hcd_ddf_setup_root_hub(ddf_dev_t *device);68 errno_t hcd_ddf_setup_root_hub(ddf_dev_t *device); 69 69 70 70 hcd_t *dev_to_hcd(ddf_dev_t *dev); 71 71 72 int hcd_ddf_enable_interrupt(ddf_dev_t *device, int);73 int hcd_ddf_get_registers(ddf_dev_t *device, hw_res_list_parsed_t *hw_res);74 int hcd_ddf_setup_interrupts(ddf_dev_t *device,72 errno_t hcd_ddf_enable_interrupt(ddf_dev_t *device, int); 73 errno_t hcd_ddf_get_registers(ddf_dev_t *device, hw_res_list_parsed_t *hw_res); 74 errno_t hcd_ddf_setup_interrupts(ddf_dev_t *device, 75 75 const hw_res_list_parsed_t *hw_res, 76 76 interrupt_handler_t handler, 77 int (*gen_irq_code)(irq_code_t *, const hw_res_list_parsed_t *, int *),77 errno_t (*gen_irq_code)(irq_code_t *, const hw_res_list_parsed_t *, int *), 78 78 cap_handle_t *handle); 79 79 void ddf_hcd_gen_irq_handler(ipc_call_t *call, ddf_dev_t *dev); -
uspace/lib/usbhost/include/usb/host/hcd.h
r36f0738 rb7fd2a0 49 49 typedef struct hcd hcd_t; 50 50 51 typedef int (*schedule_hook_t)(hcd_t *, usb_transfer_batch_t *);52 typedef int (*ep_add_hook_t)(hcd_t *, endpoint_t *);51 typedef errno_t (*schedule_hook_t)(hcd_t *, usb_transfer_batch_t *); 52 typedef errno_t (*ep_add_hook_t)(hcd_t *, endpoint_t *); 53 53 typedef void (*ep_remove_hook_t)(hcd_t *, endpoint_t *); 54 54 typedef void (*interrupt_hook_t)(hcd_t *, uint32_t); 55 typedef int (*status_hook_t)(hcd_t *, uint32_t *);55 typedef errno_t (*status_hook_t)(hcd_t *, uint32_t *); 56 56 57 57 typedef struct { … … 102 102 } 103 103 104 extern int hcd_request_address(hcd_t *, usb_speed_t, usb_address_t *);104 extern errno_t hcd_request_address(hcd_t *, usb_speed_t, usb_address_t *); 105 105 106 extern int hcd_release_address(hcd_t *, usb_address_t);106 extern errno_t hcd_release_address(hcd_t *, usb_address_t); 107 107 108 extern int hcd_reserve_default_address(hcd_t *, usb_speed_t);108 extern errno_t hcd_reserve_default_address(hcd_t *, usb_speed_t); 109 109 110 static inline int hcd_release_default_address(hcd_t *hcd)110 static inline errno_t hcd_release_default_address(hcd_t *hcd) 111 111 { 112 112 return hcd_release_address(hcd, USB_ADDRESS_DEFAULT); 113 113 } 114 114 115 extern int hcd_add_ep(hcd_t *, usb_target_t, usb_direction_t,115 extern errno_t hcd_add_ep(hcd_t *, usb_target_t, usb_direction_t, 116 116 usb_transfer_type_t, size_t, unsigned int, size_t, usb_address_t, 117 117 unsigned int); 118 118 119 extern int hcd_remove_ep(hcd_t *, usb_target_t, usb_direction_t);119 extern errno_t hcd_remove_ep(hcd_t *, usb_target_t, usb_direction_t); 120 120 121 extern int hcd_send_batch(hcd_t *, usb_target_t, usb_direction_t, void *,121 extern errno_t hcd_send_batch(hcd_t *, usb_target_t, usb_direction_t, void *, 122 122 size_t, uint64_t, usbhc_iface_transfer_in_callback_t, 123 123 usbhc_iface_transfer_out_callback_t, void *, const char *); 124 124 125 extern int hcd_send_batch_sync(hcd_t *, usb_target_t, usb_direction_t,125 extern errno_t hcd_send_batch_sync(hcd_t *, usb_target_t, usb_direction_t, 126 126 void *, size_t, uint64_t, const char *, size_t *); 127 127 -
uspace/lib/usbhost/include/usb/host/usb_bus.h
r36f0738 rb7fd2a0 58 58 typedef size_t (*bw_count_func_t)(usb_speed_t, usb_transfer_type_t, size_t, size_t); 59 59 typedef void (*ep_remove_callback_t)(endpoint_t *, void *); 60 typedef int (*ep_add_callback_t)(endpoint_t *, void *);60 typedef errno_t (*ep_add_callback_t)(endpoint_t *, void *); 61 61 62 62 /** Endpoint management structure */ … … 85 85 size_t size, size_t max_packet_size); 86 86 87 int usb_bus_init(usb_bus_t *instance,87 errno_t usb_bus_init(usb_bus_t *instance, 88 88 size_t available_bandwidth, bw_count_func_t bw_count, usb_speed_t max_speed); 89 89 90 int usb_bus_register_ep(usb_bus_t *instance, endpoint_t *ep, size_t data_size);90 errno_t usb_bus_register_ep(usb_bus_t *instance, endpoint_t *ep, size_t data_size); 91 91 92 int usb_bus_unregister_ep(usb_bus_t *instance, endpoint_t *ep);92 errno_t usb_bus_unregister_ep(usb_bus_t *instance, endpoint_t *ep); 93 93 94 94 endpoint_t * usb_bus_find_ep(usb_bus_t *instance, 95 95 usb_address_t address, usb_endpoint_t ep, usb_direction_t direction); 96 96 97 int usb_bus_add_ep(usb_bus_t *instance,97 errno_t usb_bus_add_ep(usb_bus_t *instance, 98 98 usb_address_t address, usb_endpoint_t endpoint, usb_direction_t direction, 99 99 usb_transfer_type_t type, size_t max_packet_size, unsigned packets, … … 101 101 usb_address_t tt_address, unsigned tt_port); 102 102 103 int usb_bus_remove_ep(usb_bus_t *instance,103 errno_t usb_bus_remove_ep(usb_bus_t *instance, 104 104 usb_address_t address, usb_endpoint_t endpoint, usb_direction_t direction, 105 105 ep_remove_callback_t callback, void *arg); 106 106 107 int usb_bus_reset_toggle(usb_bus_t *instance, usb_target_t target, bool all);107 errno_t usb_bus_reset_toggle(usb_bus_t *instance, usb_target_t target, bool all); 108 108 109 int usb_bus_remove_address(usb_bus_t *instance,109 errno_t usb_bus_remove_address(usb_bus_t *instance, 110 110 usb_address_t address, ep_remove_callback_t callback, void *arg); 111 111 112 int usb_bus_request_address(usb_bus_t *instance,112 errno_t usb_bus_request_address(usb_bus_t *instance, 113 113 usb_address_t *address, bool strict, usb_speed_t speed); 114 114 115 int usb_bus_get_speed(usb_bus_t *instance,115 errno_t usb_bus_get_speed(usb_bus_t *instance, 116 116 usb_address_t address, usb_speed_t *speed); 117 117 #endif -
uspace/lib/usbhost/include/usb/host/usb_transfer_batch.h
r36f0738 rb7fd2a0 79 79 * with the exception of usb_transfer_batch_finish. For external use. 80 80 */ 81 int error;81 errno_t error; 82 82 } usb_transfer_batch_t; 83 83 … … 108 108 109 109 void usb_transfer_batch_finish_error(const usb_transfer_batch_t *instance, 110 const void* data, size_t size, int error);110 const void* data, size_t size, errno_t error); 111 111 112 112 /** Finish batch using stored error value and transferred size. -
uspace/lib/usbhost/include/usb/host/utils/malloc32.h
r36f0738 rb7fd2a0 59 59 { 60 60 uintptr_t result; 61 int ret = as_get_physical_mapping(addr, &result);61 errno_t ret = as_get_physical_mapping(addr, &result); 62 62 63 63 if (ret != EOK) … … 78 78 size_t real_size = ALIGN_UP(size, PAGE_SIZE); 79 79 80 const int ret = dmamem_map_anonymous(real_size,80 const errno_t ret = dmamem_map_anonymous(real_size, 81 81 DMAMEM_4GiB, AS_AREA_READ | AS_AREA_WRITE, 0, &phys, 82 82 &address);
Note:
See TracChangeset
for help on using the changeset viewer.
