Changes in / [b9e3aa3:8357fc9] in mainline
- Location:
- uspace
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/mkbd/main.c
rb9e3aa3 r8357fc9 71 71 usb_hid_free_report(*report); 72 72 *report = NULL; 73 //printf("usb_hid_report_init() failed.\n");73 printf("usb_hid_report_init() failed.\n"); 74 74 return rc; 75 75 } … … 82 82 usb_hid_free_report(*report); 83 83 *report = NULL; 84 //printf("usbhid_dev_get_report_descriptor_length() failed.\n");84 printf("usbhid_dev_get_report_descriptor_length() failed.\n"); 85 85 return rc; 86 86 } … … 89 89 usb_hid_free_report(*report); 90 90 *report = NULL; 91 //printf("usbhid_dev_get_report_descriptor_length() returned 0.\n");91 printf("usbhid_dev_get_report_descriptor_length() returned 0.\n"); 92 92 return EINVAL; // TODO: other error code? 93 93 } … … 108 108 *report = NULL; 109 109 free(desc); 110 //printf("usbhid_dev_get_report_descriptor() failed.\n");110 printf("usbhid_dev_get_report_descriptor() failed.\n"); 111 111 return rc; 112 112 } … … 116 116 *report = NULL; 117 117 free(desc); 118 //printf("usbhid_dev_get_report_descriptor() returned wrong size:"119 //" %zu, expected: %zu.\n", actual_size, report_desc_size);118 printf("usbhid_dev_get_report_descriptor() returned wrong size:" 119 " %zu, expected: %zu.\n", actual_size, report_desc_size); 120 120 return EINVAL; // TODO: other error code? 121 121 } … … 128 128 if (rc != EOK) { 129 129 free(desc); 130 //printf("usb_hid_parse_report_descriptor() failed.\n");130 printf("usb_hid_parse_report_descriptor() failed.\n"); 131 131 return rc; 132 132 } -
uspace/drv/usbhid/usbhid.c
rb9e3aa3 r8357fc9 78 78 } 79 79 80 assert(hid_dev->subdriver_count >= 0);81 82 80 // set the init callback 83 hid_dev->subdrivers[ hid_dev->subdriver_count].init = usb_kbd_init;81 hid_dev->subdrivers[0].init = usb_kbd_init; 84 82 85 83 // set the polling callback 86 hid_dev->subdrivers[hid_dev->subdriver_count].poll = 87 usb_kbd_polling_callback; 84 hid_dev->subdrivers[0].poll = usb_kbd_polling_callback; 88 85 89 86 // set the polling ended callback 90 hid_dev->subdrivers[ hid_dev->subdriver_count].poll_end = NULL;87 hid_dev->subdrivers[0].poll_end = NULL; 91 88 92 89 // set the deinit callback 93 hid_dev->subdrivers[ hid_dev->subdriver_count].deinit = usb_kbd_deinit;90 hid_dev->subdrivers[0].deinit = usb_kbd_deinit; 94 91 95 92 // set subdriver count 96 ++hid_dev->subdriver_count;93 hid_dev->subdriver_count = 1; 97 94 98 95 return EOK; … … 111 108 } 112 109 113 assert(hid_dev->subdriver_count >= 0);114 115 110 // set the init callback 116 hid_dev->subdrivers[ hid_dev->subdriver_count].init = usb_mouse_init;111 hid_dev->subdrivers[0].init = usb_mouse_init; 117 112 118 113 // set the polling callback 119 hid_dev->subdrivers[hid_dev->subdriver_count].poll = 120 usb_mouse_polling_callback; 114 hid_dev->subdrivers[0].poll = usb_mouse_polling_callback; 121 115 122 116 // set the polling ended callback 123 hid_dev->subdrivers[ hid_dev->subdriver_count].poll_end = NULL;117 hid_dev->subdrivers[0].poll_end = NULL; 124 118 125 119 // set the deinit callback 126 hid_dev->subdrivers[ hid_dev->subdriver_count].deinit = usb_mouse_deinit;120 hid_dev->subdrivers[0].deinit = usb_mouse_deinit; 127 121 128 122 // set subdriver count 129 ++hid_dev->subdriver_count;123 hid_dev->subdriver_count = 1; 130 124 131 125 return EOK; … … 144 138 } 145 139 146 assert(hid_dev->subdriver_count >= 0);147 148 140 // set the init callback 149 hid_dev->subdrivers[hid_dev->subdriver_count].init = 150 usb_generic_hid_init; 141 hid_dev->subdrivers[0].init = usb_generic_hid_init; 151 142 152 143 // set the polling callback 153 hid_dev->subdrivers[hid_dev->subdriver_count].poll = 154 usb_generic_hid_polling_callback; 144 hid_dev->subdrivers[0].poll = usb_generic_hid_polling_callback; 155 145 156 146 // set the polling ended callback 157 hid_dev->subdrivers[ hid_dev->subdriver_count].poll_end = NULL;147 hid_dev->subdrivers[0].poll_end = NULL; 158 148 159 149 // set the deinit callback 160 hid_dev->subdrivers[ hid_dev->subdriver_count].deinit = NULL;150 hid_dev->subdrivers[0].deinit = NULL; 161 151 162 152 // set subdriver count 163 ++hid_dev->subdriver_count;153 hid_dev->subdriver_count = 1; 164 154 165 155 return EOK; … … 259 249 } 260 250 261 usb_log_debug("Size of the input report: %zu \n", size);251 usb_log_debug("Size of the input report: %zuB\n", size); 262 252 usb_hid_report_path_free(usage_path); 263 253 … … 411 401 412 402 do { 413 usb_log_debug("Getting size of the report.\n");414 403 size = usb_hid_report_byte_size(hid_dev->report, report_id, 415 404 USB_HID_REPORT_TYPE_INPUT); 416 405 usb_log_debug("Report ID: %u, size: %zu\n", report_id, size); 417 406 max_size = (size > max_size) ? size : max_size; 418 usb_log_debug("Getting next report ID\n");419 407 report_id = usb_hid_get_next_report_id(hid_dev->report, 420 408 report_id, USB_HID_REPORT_TYPE_INPUT); … … 546 534 hid_dev->subdriver_count); 547 535 //usb_hid_free(&hid_dev); 548 549 536 } else { 550 537 bool ok = false; … … 573 560 } 574 561 575 576 if (rc == EOK) { 577 // save max input report size and allocate space for the report 578 rc = usb_hid_init_report(hid_dev); 579 if (rc != EOK) { 580 usb_log_error("Failed to initialize input report buffer" 581 ".\n"); 582 } 583 } 584 562 // save max input report size and allocate space for the report 563 rc = usb_hid_init_report(hid_dev); 564 if (rc != EOK) { 565 usb_log_error("Failed to initialize input report buffer.\n"); 566 } 585 567 586 568 return rc; … … 605 587 usb_log_debug("Max input report size: %zu, buffer size: %zu\n", 606 588 hid_dev->max_input_report_size, buffer_size); 607 //assert(hid_dev->max_input_report_size >= buffer_size); 608 if (hid_dev->max_input_report_size >= buffer_size) { 609 /*! @todo This should probably be atomic. */ 610 memcpy(hid_dev->input_report, buffer, buffer_size); 611 hid_dev->input_report_size = buffer_size; 612 usb_hid_new_report(hid_dev); 613 } 589 assert(hid_dev->max_input_report_size >= buffer_size); 590 591 // if (/*!allocated*/ 592 // /*|| *//*hid_dev->input_report_size < buffer_size*/) { 593 // uint8_t *input_old = hid_dev->input_report; 594 // uint8_t *input_new = (uint8_t *)malloc(buffer_size); 595 596 // if (input_new == NULL) { 597 // usb_log_error("Failed to allocate space for input " 598 // "buffer. This event may not be reported\n"); 599 // memset(hid_dev->input_report, 0, 600 // hid_dev->input_report_size); 601 // } else { 602 // memcpy(input_new, input_old, 603 // hid_dev->input_report_size); 604 // hid_dev->input_report = input_new; 605 // if (allocated) { 606 // free(input_old); 607 // } 608 // usb_hid_new_report(); 609 // } 610 // } 611 612 /*! @todo This should probably be atomic. */ 613 memcpy(hid_dev->input_report, buffer, buffer_size); 614 hid_dev->input_report_size = buffer_size; 615 usb_hid_new_report(hid_dev); 614 616 615 617 bool cont = false;
Note:
See TracChangeset
for help on using the changeset viewer.