Changes in / [00db345a:474d08e] in mainline


Ignore:
Location:
uspace/drv
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified uspace/drv/uhci-hcd/main.c

    r00db345a r474d08e  
    158158{
    159159        sleep(3);
    160         usb_log_enable(USB_LOG_LEVEL_INFO, NAME);
     160        usb_log_enable(USB_LOG_LEVEL_DEBUG, NAME);
    161161
    162162        return ddf_driver_main(&uhci_driver);
  • TabularUnified uspace/drv/usbhid/hidreq.c

    r00db345a r474d08e  
    143143/*----------------------------------------------------------------------------*/
    144144
    145 int usbhid_req_set_idle(usbhid_dev_t *hid_dev, uint8_t duration)
    146 {
    147         if (hid_dev == NULL) {
    148                 usb_log_error("usbhid_req_set_idle(): no HID device "
    149                     "structure given.\n");
    150                 return EINVAL;
    151         }
    152        
    153         /*
    154          * No need for checking other parameters, as they are checked in
    155          * the called function (usb_control_request_set()).
    156          */
    157        
    158         int rc, sess_rc;
    159        
    160         sess_rc = usb_endpoint_pipe_start_session(&hid_dev->ctrl_pipe);
    161         if (sess_rc != EOK) {
    162                 usb_log_warning("Failed to start a session: %s.\n",
    163                     str_error(sess_rc));
    164                 return sess_rc;
    165         }
    166 
    167         usb_log_debug("Sending Set_Idle request to the device ("
    168             "duration: %u, iface: %d).\n", duration, hid_dev->iface);
    169        
    170         uint16_t value = duration << 8;
    171        
    172         rc = usb_control_request_set(&hid_dev->ctrl_pipe,
    173             USB_REQUEST_TYPE_CLASS, USB_REQUEST_RECIPIENT_INTERFACE,
    174             USB_HIDREQ_SET_IDLE, value, hid_dev->iface, NULL, 0);
    175 
    176         sess_rc = usb_endpoint_pipe_end_session(&hid_dev->ctrl_pipe);
    177 
    178         if (rc != EOK) {
    179                 usb_log_warning("Error sending output report to the keyboard: "
    180                     "%s.\n", str_error(rc));
    181                 return rc;
    182         }
    183 
    184         if (sess_rc != EOK) {
    185                 usb_log_warning("Error closing session: %s.\n",
    186                     str_error(sess_rc));
    187                 return sess_rc;
    188         }
    189        
    190         return EOK;
    191 }
    192 
    193 /*----------------------------------------------------------------------------*/
    194 
    195145/**
    196146 * @}
  • TabularUnified uspace/drv/usbhid/hidreq.h

    r00db345a r474d08e  
    5050int usbhid_req_set_protocol(usbhid_dev_t *hid_dev, usb_hid_protocol_t protocol);
    5151
    52 int usbhid_req_set_idle(usbhid_dev_t *hid_dev, uint8_t duration);
    53 
    5452/*----------------------------------------------------------------------------*/
    5553
  • TabularUnified uspace/drv/usbhid/kbddev.c

    r00db345a r474d08e  
    3838#include <str_error.h>
    3939#include <fibril.h>
    40 #include <stdio.h>
    4140
    4241#include <io/keycode.h>
     
    6362static const size_t BOOTP_BUFFER_SIZE = 8;
    6463static const size_t BOOTP_BUFFER_OUT_SIZE = 1;
    65 static const uint8_t IDLE_RATE = 125;
    6664
    6765/** Keyboard polling endpoint description for boot protocol class. */
     
    230228
    231229        if (mod_mask != 0) {
     230                usb_log_debug2("\n\nChanging mods and lock keys\n");
     231                usb_log_debug2("\nmods before: 0x%x\n", kbd_dev->mods);
     232                usb_log_debug2("\nLock keys before:0x%x\n\n",
     233                    kbd_dev->lock_keys);
     234               
    232235                if (type == KEY_PRESS) {
     236                        usb_log_debug2("\nKey pressed.\n");
    233237                        /*
    234238                         * Only change lock state on transition from released
     
    243247                        usbhid_kbd_set_led(kbd_dev);
    244248                } else {
     249                        usb_log_debug2("\nKey released.\n");
    245250                        kbd_dev->lock_keys = kbd_dev->lock_keys & ~mod_mask;
    246251                }
    247252        }
    248253
     254        usb_log_debug2("\n\nmods after: 0x%x\n", kbd_dev->mods);
     255        usb_log_debug2("\nLock keys after: 0x%x\n\n", kbd_dev->lock_keys);
     256       
    249257        if (key == KC_CAPS_LOCK || key == KC_NUM_LOCK || key == KC_SCROLL_LOCK) {
    250258                // do not send anything to the console, this is our business
     
    273281        ev.key = key;
    274282        ev.mods = kbd_dev->mods;
     283       
     284        if (ev.mods & KM_NUM_LOCK) {
     285                usb_log_debug("\n\nNum Lock turned on.\n\n");
     286        }
    275287
    276288        ev.c = layout[active_layout]->parse_ev(&ev);
     
    377389                }
    378390        }
    379 //      // report all currently pressed keys
    380 //      for (i = 0; i < kbd_dev->keycode_count; ++i) {
    381 //              if (key_codes[i] != 0) {
    382 //                      key = usbhid_parse_scancode(key_codes[i]);
    383 //                      usb_log_debug2("\nKey pressed: %d (keycode: %d)\n", key,
    384 //                          key_codes[i]);
    385 //                      usbhid_kbd_push_ev(kbd_dev, KEY_PRESS, key);
    386 //              }
    387 //      }
    388391       
    389392        memcpy(kbd_dev->keycodes, key_codes, kbd_dev->keycode_count);
    390393       
    391         char *kc = (char *)malloc(kbd_dev->keycode_count * 4 + 1);
     394        usb_log_debug2("\nNew stored keycodes: ");
    392395        for (i = 0; i < kbd_dev->keycode_count; ++i) {
    393                 snprintf(kc + (i * 4), 5, "%4d", key_codes[i]);
    394         }
    395         usb_log_debug("New stored keycodes: %s\n", kc);
     396                usb_log_debug2("%d ", kbd_dev->keycodes[i]);
     397        }
    396398}
    397399
     
    408410                return;
    409411        }
     412
     413        usb_log_debug2("Got keys from parser: ");
     414        unsigned i;
     415        for (i = 0; i < count; ++i) {
     416                usb_log_debug2("%d ", key_codes[i]);
     417        }
     418        usb_log_debug2("\n");
    410419       
    411420        usbhid_kbd_t *kbd_dev = (usbhid_kbd_t *)arg;
    412421        assert(kbd_dev != NULL);
    413 
    414         unsigned i;
    415         char *kc = (char *)malloc(kbd_dev->keycode_count * 4 + 1);
    416         for (i = 0; i < kbd_dev->keycode_count; ++i) {
    417                 snprintf(kc + (i * 4), 5, "%4d", key_codes[i]);
    418         }
    419         usb_log_debug("Got keys from parser: %s\n", kc);
    420422       
    421423        if (count != kbd_dev->keycode_count) {
     
    444446        //usb_hid_parse_report(kbd_dev->parser, buffer, actual_size, callbacks,
    445447        //    NULL);
    446         /*//usb_log_debug2("Calling usb_hid_boot_keyboard_input_report() with size"
     448        /*usb_log_debug2("Calling usb_hid_boot_keyboard_input_report() with size"
    447449            " %zu\n", actual_size);*/
    448450        //dump_buffer("bufffer: ", buffer, actual_size);
     
    557559         * Set boot protocol.
    558560         * Set LEDs according to initial setup.
    559          * Set Idle rate
    560561         */
    561562        assert(kbd_dev->hid_dev != NULL);
     
    564565       
    565566        usbhid_kbd_set_led(kbd_dev);
    566        
    567         usbhid_req_set_idle(kbd_dev->hid_dev, IDLE_RATE);
    568567       
    569568        kbd_dev->initialized = 1;
  • TabularUnified uspace/drv/usbhid/main.c

    r00db345a r474d08e  
    8080int main(int argc, char *argv[])
    8181{
    82         usb_log_enable(USB_LOG_LEVEL_DEBUG, NAME);
     82        usb_log_enable(USB_LOG_LEVEL_INFO, NAME);
    8383        return ddf_driver_main(&kbd_driver);
    8484}
Note: See TracChangeset for help on using the changeset viewer.