Changeset f167f55 in mainline
- Timestamp:
- 2011-12-06T12:06:41Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2582d8f
- Parents:
- 3f162ab
- Location:
- uspace/lib/usbhost
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/usbhost/include/usb/host/usb_transfer_batch.h
r3f162ab rf167f55 106 106 void usb_transfer_batch_destroy(const usb_transfer_batch_t *instance); 107 107 108 void usb_transfer_batch_finish (const usb_transfer_batch_t *instance,109 const void* data, size_t size );108 void usb_transfer_batch_finish_error(const usb_transfer_batch_t *instance, 109 const void* data, size_t size, int error); 110 110 /*----------------------------------------------------------------------------*/ 111 /** Override error value and finishes transfer.111 /** Finish batch using stored error value. 112 112 * 113 113 * @param[in] instance Batch structure to use. 114 114 * @param[in] data Data to copy to the output buffer. 115 115 * @param[in] size Size of @p data. 116 * @param[in] error Set batch status to this error value.117 116 */ 118 static inline void usb_transfer_batch_finish _error(119 usb_transfer_batch_t *instance, const void* data, size_t size, int error)117 static inline void usb_transfer_batch_finish( 118 const usb_transfer_batch_t *instance, const void* data, size_t size) 120 119 { 121 120 assert(instance); 122 instance->error = error; 123 usb_transfer_batch_finish(instance, data, size); 121 usb_transfer_batch_finish_error(instance, data, size, instance->error); 124 122 } 125 123 /*----------------------------------------------------------------------------*/ -
uspace/lib/usbhost/src/usb_transfer_batch.c
r3f162ab rf167f55 33 33 */ 34 34 #include <errno.h> 35 #include <str_error.h>36 35 #include <macros.h> 37 36 … … 122 121 * @param[in] data Data to copy to the output buffer. 123 122 * @param[in] size Size of @p data. 123 * @param[in] error Error value to use. 124 124 */ 125 void usb_transfer_batch_finish (126 const usb_transfer_batch_t *instance, const void *data, size_t size)125 void usb_transfer_batch_finish_error(const usb_transfer_batch_t *instance, 126 const void *data, size_t size, int error) 127 127 { 128 128 assert(instance); … … 134 134 /* Check for commands that reset toggle bit */ 135 135 if (instance->ep->transfer_type == USB_TRANSFER_CONTROL 136 && instance->error == EOK) {136 && error == EOK) { 137 137 const usb_target_t target = 138 138 {{ instance->ep->address, instance->ep->endpoint }}; … … 140 140 instance->setup_buffer); 141 141 } 142 instance->callback_out(instance->fun, 143 instance->error, instance->arg); 142 instance->callback_out(instance->fun, error, instance->arg); 144 143 } 145 144 … … 150 149 memcpy(instance->buffer, data, minsize); 151 150 } 152 instance->callback_in(instance->fun, instance->error,151 instance->callback_in(instance->fun, error, 153 152 instance->transfered_size, instance->arg); 154 153 }
Note:
See TracChangeset
for help on using the changeset viewer.