Changes in uspace/drv/usbhid/kbddev.c [d477734:6bb456c] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/usbhid/kbddev.c
rd477734 r6bb456c 63 63 static const size_t BOOTP_BUFFER_SIZE = 8; 64 64 static const size_t BOOTP_BUFFER_OUT_SIZE = 1; 65 static const uint8_t BOOTP_ERROR_ROLLOVER = 1;66 65 static const uint8_t IDLE_RATE = 0; 67 66 … … 182 181 usb_debug_str_buffer(buffer, BOOTP_BUFFER_OUT_SIZE, 0)); 183 182 183 uint16_t value = 0; 184 value |= (USB_HID_REPORT_TYPE_OUTPUT << 8); 185 184 186 assert(kbd_dev->hid_dev != NULL); 185 187 assert(kbd_dev->hid_dev->initialized); 186 usbhid_req_set_report(kbd_dev->hid_dev, USB_HID_REPORT_TYPE_OUTPUT,187 buffer,BOOTP_BUFFER_OUT_SIZE);188 usbhid_req_set_report(kbd_dev->hid_dev, value, buffer, 189 BOOTP_BUFFER_OUT_SIZE); 188 190 } 189 191 … … 320 322 const uint8_t *key_codes) 321 323 { 324 // TODO: phantom state!! 325 322 326 unsigned int key; 323 327 unsigned int i, j; 324 325 /*326 * First of all, check if the kbd have reported phantom state.327 */328 i = 0;329 // all fields should report Error Rollover330 while (i < kbd_dev->keycode_count &&331 key_codes[i] == BOOTP_ERROR_ROLLOVER) {332 ++i;333 }334 if (i == kbd_dev->keycode_count) {335 usb_log_debug("Phantom state occured.\n");336 // phantom state, do nothing337 return;338 }339 328 340 329 // TODO: quite dummy right now, think of better implementation … … 355 344 key = usbhid_parse_scancode(kbd_dev->keycodes[j]); 356 345 usbhid_kbd_push_ev(kbd_dev, KEY_RELEASE, key); 357 usb_log_debug2(" Key released: %d\n", key);346 usb_log_debug2("\nKey released: %d\n", key); 358 347 } else { 359 348 // found, nothing happens … … 375 364 // not found, i.e. new key pressed 376 365 key = usbhid_parse_scancode(key_codes[i]); 377 usb_log_debug2(" Key pressed: %d (keycode: %d)\n", key,366 usb_log_debug2("\nKey pressed: %d (keycode: %d)\n", key, 378 367 key_codes[i]); 379 368 usbhid_kbd_push_ev(kbd_dev, KEY_PRESS, key); … … 386 375 // if (key_codes[i] != 0) { 387 376 // key = usbhid_parse_scancode(key_codes[i]); 388 // usb_log_debug2(" Key pressed: %d (keycode: %d)\n", key,377 // usb_log_debug2("\nKey pressed: %d (keycode: %d)\n", key, 389 378 // key_codes[i]); 390 379 // usbhid_kbd_push_ev(kbd_dev, KEY_PRESS, key);
Note:
See TracChangeset
for help on using the changeset viewer.