Changeset f1be95c8 in mainline for uspace/drv/ohci/batch.c
- Timestamp:
- 2011-04-09T00:22:30Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 4c28d17
- Parents:
- e42dd32
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/ohci/batch.c
re42dd32 rf1be95c8 118 118 { 119 119 assert(instance); 120 ohci_batch_t *data = instance->private_data; 121 assert(data); 122 free32(data->ed); 123 free32(data->tds); 124 free32(instance->setup_buffer); 120 125 free32(instance->transport_buffer); 121 free 32(instance->setup_buffer);126 free(data); 122 127 free(instance); 123 128 } … … 125 130 bool batch_is_complete(usb_transfer_batch_t *instance) 126 131 { 127 // TODO: implement 128 return false; 132 assert(instance); 133 ohci_batch_t *data = instance->private_data; 134 assert(data); 135 size_t tds = data->td_count - 1; 136 usb_log_debug2("Batch(%p) checking %d td(s) for completion.\n", 137 instance, tds); 138 size_t i = 0; 139 for (; i < tds; ++i) { 140 if (!td_is_finished(&data->tds[i])) 141 return false; 142 instance->error = td_error(&data->tds[i]); 143 /* FIXME: calculate real transfered size */ 144 instance->transfered_size = instance->buffer_size; 145 if (instance->error != EOK) { 146 usb_log_debug("Batch(%p) found error TD(%d):%x.\n", 147 instance, i, data->tds[i].status); 148 return true; 149 // endpoint_toggle_set(instance->ep, 150 } 151 } 152 return true; 129 153 } 130 154 /*----------------------------------------------------------------------------*/
Note:
See TracChangeset
for help on using the changeset viewer.