Changes in / [662da50:854eddd6] in mainline
- Location:
- uspace
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/ohci/root_hub.c
r662da50 r854eddd6 251 251 int opResult; 252 252 if (request->ep->transfer_type == USB_TRANSFER_CONTROL) { 253 usb_log_ debug("Root hub got CONTROL packet\n");253 usb_log_info("Root hub got CONTROL packet\n"); 254 254 opResult = process_ctrl_request(instance, request); 255 255 usb_transfer_batch_finish_error(request, opResult); 256 256 } else if (request->ep->transfer_type == USB_TRANSFER_INTERRUPT) { 257 usb_log_ debug("Root hub got INTERRUPT packet\n");257 usb_log_info("Root hub got INTERRUPT packet\n"); 258 258 create_interrupt_mask_in_instance(instance); 259 259 if (is_zeros(instance->interrupt_buffer, -
uspace/drv/usbhid/generic/hiddev.c
r662da50 r854eddd6 231 231 /*----------------------------------------------------------------------------*/ 232 232 233 bool usb_generic_hid_polling_callback(usb_hid_dev_t *hid_dev, void *data /*,234 uint8_t *buffer, size_t buffer_size */)235 { 236 //usb_log_debug2("usb_hid_polling_callback(%p, %p, %zu)\n",237 //hid_dev, buffer, buffer_size);238 //usb_debug_str_buffer(buffer, buffer_size, 0);233 bool usb_generic_hid_polling_callback(usb_hid_dev_t *hid_dev, void *data, 234 uint8_t *buffer, size_t buffer_size) 235 { 236 usb_log_debug2("usb_hid_polling_callback(%p, %p, %zu)\n", 237 hid_dev, buffer, buffer_size); 238 usb_debug_str_buffer(buffer, buffer_size, 0); 239 239 return true; 240 240 } -
uspace/drv/usbhid/generic/hiddev.h
r662da50 r854eddd6 50 50 int usb_generic_hid_init(struct usb_hid_dev *hid_dev, void **data); 51 51 52 bool usb_generic_hid_polling_callback(struct usb_hid_dev *hid_dev, void *data /*,53 uint8_t *buffer, size_t buffer_size */);52 bool usb_generic_hid_polling_callback(struct usb_hid_dev *hid_dev, void *data, 53 uint8_t *buffer, size_t buffer_size); 54 54 55 55 #endif // USB_HID_HIDDDEV_H_ -
uspace/drv/usbhid/kbd/kbddev.c
r662da50 r854eddd6 434 434 * usb_hid_parse_report(). 435 435 */ 436 static void usb_kbd_process_data(usb_hid_dev_t *hid_dev, usb_kbd_t *kbd_dev /*,437 uint8_t *buffer, size_t actual_size */)436 static void usb_kbd_process_data(usb_hid_dev_t *hid_dev, usb_kbd_t *kbd_dev, 437 uint8_t *buffer, size_t actual_size) 438 438 { 439 439 assert(hid_dev->report != NULL); … … 441 441 assert(kbd_dev != NULL); 442 442 443 //usb_log_debug("Calling usb_hid_parse_report() with "444 //"buffer %s\n", usb_debug_str_buffer(buffer, actual_size, 0));443 usb_log_debug("Calling usb_hid_parse_report() with " 444 "buffer %s\n", usb_debug_str_buffer(buffer, actual_size, 0)); 445 445 446 446 usb_hid_report_path_t *path = usb_hid_report_path(); 447 447 usb_hid_report_path_append_item(path, USB_HIDUT_PAGE_KEYBOARD, 0); 448 448 449 //uint8_t report_id;450 //int rc = usb_hid_parse_report(hid_dev->report, buffer, actual_size,451 //&report_id);452 453 //if (rc != EOK) {454 //usb_log_warning("Error in usb_hid_parse_report():"455 //"%s\n", str_error(rc));456 //}457 458 usb_hid_report_path_set_report_id (path, hid_dev->report_id);449 uint8_t report_id; 450 int rc = usb_hid_parse_report(hid_dev->report, buffer, actual_size, 451 &report_id); 452 453 if (rc != EOK) { 454 usb_log_warning("Error in usb_hid_parse_report():" 455 "%s\n", str_error(rc)); 456 } 457 458 usb_hid_report_path_set_report_id (path, report_id); 459 459 460 460 // fill in the currently pressed keys … … 756 756 /*----------------------------------------------------------------------------*/ 757 757 758 bool usb_kbd_polling_callback(usb_hid_dev_t *hid_dev, void *data /*,759 uint8_t *buffer, size_t buffer_size */)760 { 761 if (hid_dev == NULL /* || buffer == NULL*/|| data == NULL) {758 bool usb_kbd_polling_callback(usb_hid_dev_t *hid_dev, void *data, 759 uint8_t *buffer, size_t buffer_size) 760 { 761 if (hid_dev == NULL || buffer == NULL || data == NULL) { 762 762 // do not continue polling (???) 763 763 return false; … … 768 768 769 769 // TODO: add return value from this function 770 usb_kbd_process_data(hid_dev, kbd_dev /*, buffer, buffer_size*/);770 usb_kbd_process_data(hid_dev, kbd_dev, buffer, buffer_size); 771 771 772 772 return true; -
uspace/drv/usbhid/kbd/kbddev.h
r662da50 r854eddd6 125 125 int usb_kbd_init(struct usb_hid_dev *hid_dev, void **data); 126 126 127 bool usb_kbd_polling_callback(struct usb_hid_dev *hid_dev, void *data /*,128 uint8_t *buffer, size_t buffer_size */);127 bool usb_kbd_polling_callback(struct usb_hid_dev *hid_dev, void *data, 128 uint8_t *buffer, size_t buffer_size); 129 129 130 130 int usb_kbd_is_initialized(const usb_kbd_t *kbd_dev); -
uspace/drv/usbhid/mouse/mousedev.c
r662da50 r854eddd6 230 230 231 231 static bool usb_mouse_process_report(usb_hid_dev_t *hid_dev, 232 usb_mouse_t *mouse_dev /*, uint8_t *buffer,233 size_t buffer_size */)232 usb_mouse_t *mouse_dev, uint8_t *buffer, 233 size_t buffer_size) 234 234 { 235 235 assert(mouse_dev != NULL); 236 236 237 //usb_log_debug2("got buffer: %s.\n",238 //usb_debug_str_buffer(buffer, buffer_size, 0));237 usb_log_debug2("got buffer: %s.\n", 238 usb_debug_str_buffer(buffer, buffer_size, 0)); 239 239 240 240 if (mouse_dev->mouse_phone < 0) { … … 247 247 */ 248 248 249 //usb_log_debug(NAME " Calling usb_hid_parse_report() with "250 //"buffer %s\n", usb_debug_str_buffer(buffer, buffer_size, 0));251 252 //uint8_t report_id;253 254 //int rc = usb_hid_parse_report(hid_dev->report, buffer, buffer_size,255 //&report_id);256 257 //if (rc != EOK) {258 //usb_log_warning(NAME "Error in usb_hid_parse_report(): %s\n",259 //str_error(rc));260 //return true;261 //}249 usb_log_debug(NAME " Calling usb_hid_parse_report() with " 250 "buffer %s\n", usb_debug_str_buffer(buffer, buffer_size, 0)); 251 252 uint8_t report_id; 253 254 int rc = usb_hid_parse_report(hid_dev->report, buffer, buffer_size, 255 &report_id); 256 257 if (rc != EOK) { 258 usb_log_warning(NAME "Error in usb_hid_parse_report(): %s\n", 259 str_error(rc)); 260 return true; 261 } 262 262 263 263 /* … … 270 270 USB_HIDUT_USAGE_GENERIC_DESKTOP_X); 271 271 272 usb_hid_report_path_set_report_id(path, hid_dev->report_id);272 usb_hid_report_path_set_report_id(path, report_id); 273 273 274 274 usb_hid_report_field_t *field = usb_hid_report_get_sibling( … … 293 293 USB_HIDUT_USAGE_GENERIC_DESKTOP_Y); 294 294 295 usb_hid_report_path_set_report_id(path, hid_dev->report_id);295 usb_hid_report_path_set_report_id(path, report_id); 296 296 297 297 field = usb_hid_report_get_sibling( … … 321 321 USB_HIDUT_USAGE_GENERIC_DESKTOP_WHEEL); 322 322 323 usb_hid_report_path_set_report_id(path, hid_dev->report_id);323 usb_hid_report_path_set_report_id(path, report_id); 324 324 325 325 field = usb_hid_report_get_sibling( … … 345 345 path = usb_hid_report_path(); 346 346 usb_hid_report_path_append_item(path, USB_HIDUT_PAGE_BUTTON, 0); 347 usb_hid_report_path_set_report_id(path, hid_dev->report_id);347 usb_hid_report_path_set_report_id(path, report_id); 348 348 349 349 field = usb_hid_report_get_sibling( … … 510 510 /*----------------------------------------------------------------------------*/ 511 511 512 bool usb_mouse_polling_callback(usb_hid_dev_t *hid_dev, void *data /*,513 uint8_t *buffer, size_t buffer_size */)512 bool usb_mouse_polling_callback(usb_hid_dev_t *hid_dev, void *data, 513 uint8_t *buffer, size_t buffer_size) 514 514 { 515 515 usb_log_debug("usb_mouse_polling_callback()\n"); 516 //usb_debug_str_buffer(buffer, buffer_size, 0);516 usb_debug_str_buffer(buffer, buffer_size, 0); 517 517 518 518 if (hid_dev == NULL || data == NULL) { … … 524 524 usb_mouse_t *mouse_dev = (usb_mouse_t *)data; 525 525 526 return usb_mouse_process_report(hid_dev, mouse_dev /*, buffer,527 buffer_size */);526 return usb_mouse_process_report(hid_dev, mouse_dev, buffer, 527 buffer_size); 528 528 } 529 529 -
uspace/drv/usbhid/mouse/mousedev.h
r662da50 r854eddd6 65 65 int usb_mouse_init(struct usb_hid_dev *hid_dev, void **data); 66 66 67 bool usb_mouse_polling_callback(struct usb_hid_dev *hid_dev, void *data /*,68 uint8_t *buffer, size_t buffer_size */);67 bool usb_mouse_polling_callback(struct usb_hid_dev *hid_dev, void *data, 68 uint8_t *buffer, size_t buffer_size); 69 69 70 70 void usb_mouse_deinit(struct usb_hid_dev *hid_dev, void *data); -
uspace/drv/usbhid/multimedia/multimedia.c
r662da50 r854eddd6 274 274 /*----------------------------------------------------------------------------*/ 275 275 276 bool usb_multimedia_polling_callback(struct usb_hid_dev *hid_dev, void *data /*,277 uint8_t *buffer, size_t buffer_size */)276 bool usb_multimedia_polling_callback(struct usb_hid_dev *hid_dev, void *data, 277 uint8_t *buffer, size_t buffer_size) 278 278 { 279 279 // TODO: checks 280 if (hid_dev == NULL || data == NULL /* || buffer == NULL*/) {280 if (hid_dev == NULL || data == NULL || buffer == NULL) { 281 281 return false; 282 282 } 283 283 284 //usb_log_debug(NAME " usb_lgtch_polling_callback(%p, %p, %zu)\n",285 //hid_dev, buffer, buffer_size);284 usb_log_debug(NAME " usb_lgtch_polling_callback(%p, %p, %zu)\n", 285 hid_dev, buffer, buffer_size); 286 286 287 287 usb_multimedia_t *multim_dev = (usb_multimedia_t *)data; 288 288 289 //usb_log_debug(NAME " Calling usb_hid_parse_report() with "290 //"buffer %s\n", usb_debug_str_buffer(buffer, buffer_size, 0));289 usb_log_debug(NAME " Calling usb_hid_parse_report() with " 290 "buffer %s\n", usb_debug_str_buffer(buffer, buffer_size, 0)); 291 291 292 292 usb_hid_report_path_t *path = usb_hid_report_path(); 293 293 usb_hid_report_path_append_item(path, USB_HIDUT_PAGE_CONSUMER, 0); 294 294 295 //uint8_t report_id;296 297 //int rc = usb_hid_parse_report(hid_dev->report, buffer, buffer_size,298 //&report_id);299 300 //if (rc != EOK) {301 //usb_log_warning(NAME "Error in usb_hid_parse_report(): %s\n",302 //str_error(rc));303 //return true;304 //}305 306 usb_hid_report_path_set_report_id(path, hid_dev->report_id);295 uint8_t report_id; 296 297 int rc = usb_hid_parse_report(hid_dev->report, buffer, buffer_size, 298 &report_id); 299 300 if (rc != EOK) { 301 usb_log_warning(NAME "Error in usb_hid_parse_report(): %s\n", 302 str_error(rc)); 303 return true; 304 } 305 306 usb_hid_report_path_set_report_id(path, report_id); 307 307 308 308 usb_hid_report_field_t *field = usb_hid_report_get_sibling( -
uspace/drv/usbhid/multimedia/multimedia.h
r662da50 r854eddd6 47 47 void usb_multimedia_deinit(struct usb_hid_dev *hid_dev, void *data); 48 48 49 bool usb_multimedia_polling_callback(struct usb_hid_dev *hid_dev, void *data /*,50 uint8_t *buffer, size_t buffer_size */);49 bool usb_multimedia_polling_callback(struct usb_hid_dev *hid_dev, void *data, 50 uint8_t *buffer, size_t buffer_size); 51 51 52 52 /*----------------------------------------------------------------------------*/ -
uspace/drv/usbhid/subdrivers.h
r662da50 r854eddd6 49 49 /*----------------------------------------------------------------------------*/ 50 50 51 /** Structure representing the mapping between device requirements and the 52 * subdriver supposed to handle this device. 53 * 54 * By filling in this structure and adding it to the usb_hid_subdrivers array, 55 * a new subdriver mapping will be created and used by the HID driver when it 56 * searches for appropriate subdrivers for a device. 51 /* TODO: This mapping must contain some other information to get the proper 52 * interface. 57 53 */ 58 54 typedef struct usb_hid_subdriver_mapping { 59 /** Usage path that the device's Input reports must contain.60 *61 * It is an array of pairs <usage_page, usage>, terminated by a <0, 0>62 * pair. If you do not wish to specify the device in this way, set this63 * to NULL.64 */65 55 const usb_hid_subdriver_usage_t *usage_path; 66 67 /** Report ID for which the path should apply. */68 56 int report_id; 69 70 /** Compare type for the Usage path. */71 57 int compare; 72 73 /** Vendor ID (set to -1 if not specified). */74 58 int vendor_id; 75 76 /** Product ID (set to -1 if not specified). */77 59 int product_id; 78 79 /** Subdriver for controlling this device. */80 60 usb_hid_subdriver_t subdriver; 81 61 } usb_hid_subdriver_mapping_t; -
uspace/drv/usbhid/usbhid.c
r662da50 r854eddd6 582 582 } 583 583 584 // parse the input report585 586 int rc = usb_hid_parse_report(hid_dev->report, buffer, buffer_size,587 &hid_dev->report_id);588 589 if (rc != EOK) {590 usb_log_warning("Error in usb_hid_parse_report():"591 "%s\n", str_error(rc));592 }593 594 584 bool cont = false; 595 585 … … 598 588 if (hid_dev->subdrivers[i].poll != NULL 599 589 && hid_dev->subdrivers[i].poll(hid_dev, 600 hid_dev->subdrivers[i].data /*, buffer, buffer_size*/)) {590 hid_dev->subdrivers[i].data, buffer, buffer_size)) { 601 591 cont = true; 602 592 } -
uspace/drv/usbhid/usbhid.h
r662da50 r854eddd6 50 50 typedef int (*usb_hid_driver_init_t)(struct usb_hid_dev *, void **data); 51 51 typedef void (*usb_hid_driver_deinit_t)(struct usb_hid_dev *, void *data); 52 typedef bool (*usb_hid_driver_poll_t)(struct usb_hid_dev *, void *data); 53 typedef int (*usb_hid_driver_poll_ended_t)(struct usb_hid_dev *, void *data, 52 typedef bool (*usb_hid_driver_poll)(struct usb_hid_dev *, void *data, uint8_t *, 53 size_t); 54 typedef int (*usb_hid_driver_poll_ended)(struct usb_hid_dev *, void *data, 54 55 bool reason); 55 56 … … 60 61 usb_hid_driver_deinit_t deinit; 61 62 /** Function to be called when data arrives from the device. */ 62 usb_hid_driver_poll _tpoll;63 usb_hid_driver_poll poll; 63 64 /** Function to be called when polling ends. */ 64 usb_hid_driver_poll_ended _tpoll_end;65 usb_hid_driver_poll_ended poll_end; 65 66 /** Arbitrary data needed by the subdriver. */ 66 67 void *data; … … 92 93 /** HID Report parser. */ 93 94 usb_hid_report_t *report; 94 95 uint8_t report_id;96 95 97 96 uint8_t *input_report; -
uspace/lib/usbhid/src/hidreq.c
r662da50 r854eddd6 82 82 value |= (type << 8); 83 83 84 usb_log_debug("Sending Set 84 usb_log_debug("Sending Set_Report request to the device.\n"); 85 85 86 86 rc = usb_control_request_set(ctrl_pipe, … … 89 89 90 90 if (rc != EOK) { 91 usb_log_warning("Error sending Set Report request to the"92 " device:%s.\n", str_error(rc));91 usb_log_warning("Error sending output report to the keyboard: " 92 "%s.\n", str_error(rc)); 93 93 return rc; 94 94 } … … 129 129 int rc; 130 130 131 usb_log_debug("Sending Set 131 usb_log_debug("Sending Set_Protocol request to the device (" 132 132 "protocol: %d, iface: %d).\n", protocol, iface_no); 133 133 … … 137 137 138 138 if (rc != EOK) { 139 usb_log_warning("Error sending Set Protocol request to the"140 " device:%s.\n", str_error(rc));139 usb_log_warning("Error sending output report to the keyboard: " 140 "%s.\n", str_error(rc)); 141 141 return rc; 142 142 } … … 177 177 int rc; 178 178 179 usb_log_debug("Sending Set 179 usb_log_debug("Sending Set_Idle request to the device (" 180 180 "duration: %u, iface: %d).\n", duration, iface_no); 181 181 … … 187 187 188 188 if (rc != EOK) { 189 usb_log_warning("Error sending Set Idle request to the device: "189 usb_log_warning("Error sending output report to the keyboard: " 190 190 "%s.\n", str_error(rc)); 191 191 return rc; … … 235 235 value |= (type << 8); 236 236 237 usb_log_debug("Sending Get 237 usb_log_debug("Sending Get_Report request to the device.\n"); 238 238 239 239 rc = usb_control_request_get(ctrl_pipe, … … 243 243 244 244 if (rc != EOK) { 245 usb_log_warning("Error sending Get Report request to the device: "245 usb_log_warning("Error sending output report to the keyboard: " 246 246 "%s.\n", str_error(rc)); 247 247 return rc; … … 283 283 int rc; 284 284 285 usb_log_debug("Sending Get 285 usb_log_debug("Sending Get_Protocol request to the device (" 286 286 "iface: %d).\n", iface_no); 287 287 … … 294 294 295 295 if (rc != EOK) { 296 usb_log_warning("Error sending Get Protocol request to the"297 " device:%s.\n", str_error(rc));296 usb_log_warning("Error sending output report to the keyboard: " 297 "%s.\n", str_error(rc)); 298 298 return rc; 299 299 } … … 344 344 int rc; 345 345 346 usb_log_debug("Sending Get 346 usb_log_debug("Sending Get_Idle request to the device (" 347 347 "iface: %d).\n", iface_no); 348 348 … … 357 357 358 358 if (rc != EOK) { 359 usb_log_warning("Error sending Get Idle request to the device: "359 usb_log_warning("Error sending output report to the keyboard: " 360 360 "%s.\n", str_error(rc)); 361 361 return rc;
Note:
See TracChangeset
for help on using the changeset viewer.