Ignore:
Timestamp:
2011-10-15T00:09:46Z (13 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
8a121b1
Parents:
1526c174
Message:

usbhid: Wait for autorepeat fibril during destruction.

Fixes random failure on keyboard unplug.
Add a bunch of debug messages.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/bus/usb/usbhid/kbd/kbddev.c

    r1526c174 r2a5b62b  
    502502
    503503        if (kbd_dev == NULL) {
    504                 usb_log_fatal("No memory!\n");
     504                usb_log_error("No memory!\n");
    505505                return NULL;
    506506        }
     
    624624
    625625        if (kbd_dev->keys == NULL) {
    626                 usb_log_fatal("No memory!\n");
     626                usb_log_error("No memory!\n");
    627627                free(kbd_dev);
    628628                return ENOMEM;
     
    633633
    634634        if (kbd_dev->keys_old == NULL) {
    635                 usb_log_fatal("No memory!\n");
     635                usb_log_error("No memory!\n");
    636636                free(kbd_dev->keys);
    637637                free(kbd_dev);
     
    797797                usb_log_warning("Failed to unbind kbd function.\n");
    798798        } else {
     799                usb_log_debug2("%s unbound.\n", kbd_dev->fun->name);
    799800                kbd_dev->fun->driver_data = NULL;
    800801                ddf_fun_destroy(kbd_dev->fun);
     
    811812
    812813        if (data != NULL) {
    813                 usb_kbd_t *kbd_dev = (usb_kbd_t *)data;
     814                usb_kbd_t *kbd_dev = data;
    814815                if (usb_kbd_is_initialized(kbd_dev)) {
    815816                        usb_kbd_mark_unusable(kbd_dev);
    816                 } else {
     817                        /* wait for autorepeat */
     818                        async_usleep(CHECK_DELAY);
    817819                        usb_kbd_destroy(kbd_dev);
    818820                }
Note: See TracChangeset for help on using the changeset viewer.