Changeset 45019865 in mainline for uspace/drv/usbkbd/main.c
- Timestamp:
- 2011-01-14T13:35:14Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 0a9ea4a
- Parents:
- f401312
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/usbkbd/main.c
rf401312 r45019865 39 39 #include <usb/descriptor.h> 40 40 #include "descparser.h" 41 #include "descdump.h" 41 42 42 43 #define BUFFER_SIZE 32 … … 109 110 unsigned i; 110 111 for (i = 0; i < kbd_dev->conf->config_descriptor.interface_count; ++i) { 111 uint8_t type =112 kbd_dev->conf->interfaces[i].hid_desc.report_desc_info.type;113 112 // TODO: endianness 114 113 uint16_t length = 115 114 kbd_dev->conf->interfaces[i].hid_desc.report_desc_info.length; 115 size_t actual_size = 0; 116 116 117 117 // allocate space for the report descriptor 118 118 kbd_dev->conf->interfaces[i].report_desc = (uint8_t *)malloc(length); 119 119 120 // get the descriptor from the device 120 121 } 121 int rc = usb_drv_req_get_descriptor(kbd_dev->device->parent_phone, 122 kbd_dev->address, USB_REQUEST_TYPE_CLASS, USB_DESCTYPE_HID_REPORT, 123 0, i, kbd_dev->conf->interfaces[i].report_desc, length, 124 &actual_size); 125 126 if (rc != EOK) { 127 return rc; 128 } 129 130 assert(actual_size == length); 131 132 dump_hid_class_descriptor(0, USB_DESCTYPE_HID_REPORT, 133 kbd_dev->conf->interfaces[i].report_desc, length); 134 } 135 136 return EOK; 122 137 } 123 138 … … 162 177 rc = usbkbd_parse_descriptors(descriptors, transferred, kbd_dev->conf); 163 178 free(descriptors); 179 if (rc != EOK) { 180 printf("Problem with parsing standard descriptors.\n"); 181 return rc; 182 } 164 183 165 184 // get and report descriptors 166 185 rc = usbkbd_get_report_descriptor(kbd_dev); 186 if (rc != EOK) { 187 printf("Problem with parsing HID REPORT descriptor.\n"); 188 return rc; 189 } 167 190 168 191 usbkbd_print_config(kbd_dev->conf); 169 192 170 return rc;193 return EOK; 171 194 } 172 195
Note:
See TracChangeset
for help on using the changeset viewer.