Changeset c32688d in mainline for uspace/lib/usb/src
- Timestamp:
- 2011-03-12T11:30:14Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 361e61b, bb41b85
- Parents:
- 33382a9
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/usb/src/hidparser.c
r33382a9 rc32688d 178 178 } 179 179 memcpy(new_report_item,report_item, sizeof(usb_hid_report_item_t)); 180 /* reset local items */ 181 new_report_item->usage_minimum = 0; 182 new_report_item->usage_maximum = 0; 183 180 184 link_initialize(&(new_report_item->link)); 181 185 report_item = new_report_item; … … 501 505 usb_log_debug("\tCOUNT: %X\n", report_item->count); 502 506 usb_log_debug("\tSIZE: %X\n", report_item->size); 503 usb_log_debug("\tCONSTANT: %X\n", USB_HID_ITEM_FLAG_CONSTANT(report_item->item_flags)); 507 usb_log_debug("\tCONSTANT/VAR: %X\n", USB_HID_ITEM_FLAG_CONSTANT(report_item->item_flags)); 508 usb_log_debug("\tVARIABLE/ARRAY: %X\n", USB_HID_ITEM_FLAG_VARIABLE(report_item->item_flags)); 504 509 usb_log_debug("\tUSAGE: %X\n", report_item->usage); 505 510 usb_log_debug("\tUSAGE PAGE: %X\n", report_item->usage_page); … … 508 513 usb_log_debug("\tPHYMIN: %X\n", report_item->physical_minimum); 509 514 usb_log_debug("\tPHYMAX: %X\n", report_item->physical_maximum); 515 usb_log_debug("\tUSAGEMIN: %X\n", report_item->usage_minimum); 516 usb_log_debug("\tUSAGEMAX: %X\n", report_item->usage_maximum); 517 510 518 usb_log_debug("\n"); 511 519 … … 602 610 usb_hid_report_item_t *item; 603 611 uint8_t *keys; 612 uint8_t item_value; 604 613 size_t key_count=0; 605 614 size_t i=0; … … 621 630 item = list_get_instance(list_item, usb_hid_report_item_t, link); 622 631 if(!USB_HID_ITEM_FLAG_CONSTANT(item->item_flags) && 623 (item->usage_page == BAD_HACK_USAGE_PAGE)) {632 (item->usage_page == path.usage_page)) { 624 633 for(j=0; j<(size_t)(item->count); j++) { 625 keys[i++] = usb_hid_translate_data(item, data,j); 634 if((USB_HID_ITEM_FLAG_VARIABLE(item->item_flags) == 0) || 635 ((item->usage_minimum == 0) && (item->usage_maximum == 0))) { 636 // variable item 637 keys[i++] = usb_hid_translate_data(item, data,j); 638 } 639 else { 640 // bitmapa 641 if((item_value = usb_hid_translate_data(item, data, j)) != 0) { 642 keys[i++] = j + item->usage_minimum; 643 } 644 else { 645 keys[i++] = 0; 646 } 647 } 626 648 } 627 649 }
Note:
See TracChangeset
for help on using the changeset viewer.