Changeset feb10c88 in mainline for uspace/drv/uhci-hcd/batch.c
- Timestamp:
- 2011-04-07T14:35:08Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2e6bbcf
- Parents:
- 8f30c2e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/uhci-hcd/batch.c
r8f30c2e rfeb10c88 80 80 * transaction and callback. 81 81 */ 82 usb_transfer_batch_t * batch_get(ddf_fun_t *fun, usb_target_t target, 83 usb_transfer_type_t transfer_type, size_t max_packet_size, 84 usb_speed_t speed, char *buffer, size_t buffer_size, 85 char* setup_buffer, size_t setup_size, 82 usb_transfer_batch_t * batch_get(ddf_fun_t *fun, endpoint_t *ep, 83 char *buffer, size_t buffer_size, char* setup_buffer, size_t setup_size, 86 84 usbhc_iface_transfer_in_callback_t func_in, 87 usbhc_iface_transfer_out_callback_t func_out, void *arg, endpoint_t *ep 88 ) 85 usbhc_iface_transfer_out_callback_t func_out, void *arg) 89 86 { 90 87 assert(ep); … … 104 101 CHECK_NULL_DISPOSE_RETURN(instance, 105 102 "Failed to allocate batch instance.\n"); 103 usb_target_t target = 104 { .address = ep->address, .endpoint = ep->endpoint }; 106 105 usb_transfer_batch_init(instance, target, 107 transfer_type, speed,max_packet_size,106 ep->transfer_type, ep->speed, ep->max_packet_size, 108 107 buffer, NULL, buffer_size, NULL, setup_size, func_in, 109 108 func_out, arg, fun, ep, NULL); … … 116 115 instance->private_data = data; 117 116 118 data->transfers = (buffer_size + max_packet_size - 1) / max_packet_size; 119 if (transfer_type == USB_TRANSFER_CONTROL) { 117 data->transfers = 118 (buffer_size + ep->max_packet_size - 1) / ep->max_packet_size; 119 if (ep->transfer_type == USB_TRANSFER_CONTROL) { 120 120 data->transfers += 2; 121 121 } … … 179 179 instance, i, data->tds[i].status); 180 180 td_print_status(&data->tds[i]); 181 if (instance->ep != NULL) 182 endpoint_toggle_set(instance->ep, 183 td_toggle(&data->tds[i])); 181 assert(instance->ep != NULL); 182 183 endpoint_toggle_set(instance->ep, 184 td_toggle(&data->tds[i])); 184 185 if (i > 0) 185 186 goto substract_ret;
Note:
See TracChangeset
for help on using the changeset viewer.