Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/hid/input/generic/input.c

    r10a5479d r5da7199  
    3939#include <adt/list.h>
    4040#include <bool.h>
    41 #include <fibril_synch.h>
    4241#include <ipc/services.h>
    4342#include <ipc/input.h>
     
    8483async_sess_t *irc_sess = NULL;
    8584
    86 static FIBRIL_MUTEX_INITIALIZE(discovery_lock);
    87 
    8885void kbd_push_data(kbd_dev_t *kdev, sysarg_t data)
    8986{
     
    175172
    176173/** Mouse pointer has moved. */
    177 void mouse_push_event_move(mouse_dev_t *mdev, int dx, int dy, int dz)
     174void mouse_push_event_move(mouse_dev_t *mdev, int dx, int dy)
    178175{
    179176        async_exch_t *exch = async_exchange_begin(client_sess);
    180         if (dx || dy)
    181                 async_msg_2(exch, INPUT_EVENT_MOVE, dx, dy);
    182         if (dz) {
    183                 // TODO: Implement proper wheel support
    184                 keycode_t code = dz > 0 ? KC_UP : KC_DOWN;
    185                 for (int i = 0; i < 3; ++i) {
    186                         async_msg_4(exch, INPUT_EVENT_KEY, KEY_PRESS, code, 0, 0);
    187                 }
    188                 async_msg_4(exch, INPUT_EVENT_KEY, KEY_RELEASE, code, 0, 0);
    189         }
     177        async_msg_2(exch, INPUT_EVENT_MOVE, dx, dy);
    190178        async_exchange_end(exch);
    191179}
     
    409397         * them automatically.
    410398         */
     399#if defined(UARCH_amd64)
     400        kbd_add_dev(&chardev_port, &pc_ctl);
     401#endif
    411402#if defined(UARCH_arm32) && defined(MACHINE_gta02)
    412403        kbd_add_dev(&chardev_port, &stty_ctl);
     
    420411#if defined(UARCH_arm32) && defined(MACHINE_integratorcp)
    421412        kbd_add_dev(&pl050_port, &pc_ctl);
     413#endif
     414#if defined(UARCH_ia32)
     415        kbd_add_dev(&chardev_port, &pc_ctl);
     416#endif
     417#if defined(MACHINE_i460GX)
     418        kbd_add_dev(&chardev_port, &pc_ctl);
    422419#endif
    423420#if defined(MACHINE_ski)
     
    453450         * them automatically.
    454451         */
     452#if defined(UARCH_amd64)
     453        mouse_add_dev(&chardev_mouse_port, &ps2_proto);
     454#endif
     455#if defined(UARCH_ia32)
     456        mouse_add_dev(&chardev_mouse_port, &ps2_proto);
     457#endif
     458#if defined(MACHINE_i460GX)
     459        mouse_add_dev(&chardev_mouse_port, &ps2_proto);
     460#endif
    455461#if defined(UARCH_ppc32)
    456462        mouse_add_dev(&adb_mouse_port, &adb_proto);
     
    596602        int rc;
    597603       
    598         fibril_mutex_lock(&discovery_lock);
    599        
    600604        rc = dev_check_new_kbdevs();
    601         if (rc != EOK) {
    602                 fibril_mutex_unlock(&discovery_lock);
     605        if (rc != EOK)
    603606                return rc;
    604         }
    605607       
    606608        rc = dev_check_new_mousedevs();
    607         if (rc != EOK) {
    608                 fibril_mutex_unlock(&discovery_lock);
     609        if (rc != EOK)
    609610                return rc;
    610         }
    611        
    612         fibril_mutex_unlock(&discovery_lock);
    613        
     611
    614612        return EOK;
    615613}
     
    660658       
    661659        /* Register driver */
    662         async_set_client_connection(client_connection);
    663         int rc = loc_server_register(NAME);
     660        int rc = loc_server_register(NAME, client_connection);
    664661        if (rc < 0) {
    665662                printf("%s: Unable to register server (%d)\n", NAME, rc);
Note: See TracChangeset for help on using the changeset viewer.