Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
hid-roccat-isku.h
Go to the documentation of this file.
1 #ifndef __HID_ROCCAT_ISKU_H
2 #define __HID_ROCCAT_ISKU_H
3 
4 /*
5  * Copyright (c) 2011 Stefan Achatz <[email protected]>
6  */
7 
8 /*
9  * This program is free software; you can redistribute it and/or modify it
10  * under the terms of the GNU General Public License as published by the Free
11  * Software Foundation; either version 2 of the License, or (at your option)
12  * any later version.
13  */
14 
15 #include <linux/types.h>
16 
17 enum {
20 };
21 
22 struct isku_control {
23  uint8_t command; /* ISKU_COMMAND_CONTROL */
26 } __packed;
27 
29  uint8_t command; /* ISKU_COMMAND_ACTUAL_PROFILE */
30  uint8_t size; /* always 3 */
32 } __packed;
33 
34 struct isku_key_mask {
35  uint8_t command; /* ISKU_COMMAND_KEY_MASK */
36  uint8_t size; /* 6 */
40 } __packed;
41 
43  uint8_t data[0x29];
44 } __packed;
45 
47  uint8_t data[0x41];
48 } __packed;
49 
51  uint8_t data[0x1d];
52 } __packed;
53 
55  uint8_t data[0x17];
56 } __packed;
57 
59  uint8_t data[0x23];
60 } __packed;
61 
63  uint8_t data[0x6];
64 } __packed;
65 
66 struct isku_macro {
67  uint8_t data[0x823];
68 } __packed;
69 
70 struct isku_light {
71  uint8_t data[0xa];
72 } __packed;
73 
74 struct isku_info {
78 } __packed;
79 
80 struct isku_talk {
81  uint8_t data[0x10];
82 } __packed;
83 
84 struct isku_last_set {
85  uint8_t data[0x14];
86 } __packed;
87 
106 };
107 
109  uint8_t number; /* ISKU_REPORT_NUMBER_BUTTON */
114 };
115 
118 };
119 
122 };
123 
129 } __packed;
130 
131 struct isku_device {
134 
135  struct mutex isku_lock;
136 
138 };
139 
140 #endif