Changes in uspace/drv/usbhid/kbddev.h [dfe53af:2391aaf] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/usbhid/kbddev.h
rdfe53af r2391aaf 39 39 #include <stdint.h> 40 40 41 #include <fibril_synch.h>42 43 41 #include <usb/classes/hid.h> 44 42 #include <ddf/driver.h> … … 48 46 49 47 /*----------------------------------------------------------------------------*/ 48 50 49 /** 51 * Structure for keeping information needed for auto-repeat of keys.50 * @brief USB/HID keyboard device type. 52 51 */ 53 52 typedef struct { 54 /** Last pressed key. */55 unsigned int key_new;56 /** Key to be repeated. */57 unsigned int key_repeated;58 /** Delay before first repeat in microseconds. */59 unsigned int delay_before;60 /** Delay between repeats in microseconds. */61 unsigned int delay_between;62 } usbhid_kbd_repeat_t;63 64 /**65 * USB/HID keyboard device type.66 *67 * Holds a reference to generic USB/HID device structure and keyboard-specific68 * data, such as currently pressed keys, modifiers and lock keys.69 *70 * Also holds a IPC phone to the console (since there is now no other way to71 * communicate with it).72 *73 * @note Storing active lock keys in this structure results in their setting74 * being device-specific.75 */76 typedef struct {77 /** Structure holding generic USB/HID device information. */78 53 usbhid_dev_t *hid_dev; 79 54 80 /** Currently pressed keys (not translated to key codes). */ 81 uint8_t *keys; 82 /** Count of stored keys (i.e. number of keys in the report). */ 83 size_t key_count; 84 /** Currently pressed modifiers (bitmap). */ 55 uint8_t *keycodes; 56 size_t keycode_count; 85 57 uint8_t modifiers; 86 58 87 /** Currently active modifiers including locks. Sent to the console. */88 59 unsigned mods; 89 90 /** Currently active lock keys. */91 60 unsigned lock_keys; 92 61 93 /** IPC phone to the console device (for sending key events). */94 62 int console_phone; 95 63 96 /** Information for auto-repeat of keys. */97 usbhid_kbd_repeat_t repeat;98 99 /** Mutex for accessing the information about auto-repeat. */100 fibril_mutex_t *repeat_mtx;101 102 /** State of the structure (for checking before use). */103 64 int initialized; 104 65 } usbhid_kbd_t; … … 108 69 int usbhid_kbd_try_add_device(ddf_dev_t *dev); 109 70 110 void usbhid_kbd_push_ev(usbhid_kbd_t *kbd_dev, int type, unsigned int key);111 112 71 #endif /* USBHID_KBDDEV_H_ */ 113 72
Note:
See TracChangeset
for help on using the changeset viewer.