aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/ABI/testing/sysfs-driver-hid-roccat-savu9
-rw-r--r--drivers/hid/hid-roccat-savu.c2
-rw-r--r--drivers/hid/hid-roccat-savu.h2
3 files changed, 13 insertions, 0 deletions
diff --git a/Documentation/ABI/testing/sysfs-driver-hid-roccat-savu b/Documentation/ABI/testing/sysfs-driver-hid-roccat-savu
index e23349001288..b42922cf6b1f 100644
--- a/Documentation/ABI/testing/sysfs-driver-hid-roccat-savu
+++ b/Documentation/ABI/testing/sysfs-driver-hid-roccat-savu
@@ -66,3 +66,12 @@ Description: The mouse can store 5 profiles which can be switched by the
66 The data has to be 3 bytes long. 66 The data has to be 3 bytes long.
67 The mouse will reject invalid data. 67 The mouse will reject invalid data.
68Users: http://roccat.sourceforge.net 68Users: http://roccat.sourceforge.net
69
70What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/savu/roccatsavu<minor>/sensor
71Date: July 2012
72Contact: Stefan Achatz <erazor_de@users.sourceforge.net>
73Description: The mouse has a Avago ADNS-3090 sensor.
74 This file allows reading and writing of the mouse sensors registers.
75 The data has to be 4 bytes long.
76Users: http://roccat.sourceforge.net
77
diff --git a/drivers/hid/hid-roccat-savu.c b/drivers/hid/hid-roccat-savu.c
index 29e87d712de0..014afba407e0 100644
--- a/drivers/hid/hid-roccat-savu.c
+++ b/drivers/hid/hid-roccat-savu.c
@@ -121,6 +121,7 @@ SAVU_SYSFS_RW(general, GENERAL)
121SAVU_SYSFS_RW(buttons, BUTTONS) 121SAVU_SYSFS_RW(buttons, BUTTONS)
122SAVU_SYSFS_RW(macro, MACRO) 122SAVU_SYSFS_RW(macro, MACRO)
123SAVU_SYSFS_R(info, INFO) 123SAVU_SYSFS_R(info, INFO)
124SAVU_SYSFS_RW(sensor, SENSOR)
124 125
125static struct bin_attribute savu_bin_attributes[] = { 126static struct bin_attribute savu_bin_attributes[] = {
126 SAVU_BIN_ATTRIBUTE_W(control, CONTROL), 127 SAVU_BIN_ATTRIBUTE_W(control, CONTROL),
@@ -129,6 +130,7 @@ static struct bin_attribute savu_bin_attributes[] = {
129 SAVU_BIN_ATTRIBUTE_RW(buttons, BUTTONS), 130 SAVU_BIN_ATTRIBUTE_RW(buttons, BUTTONS),
130 SAVU_BIN_ATTRIBUTE_RW(macro, MACRO), 131 SAVU_BIN_ATTRIBUTE_RW(macro, MACRO),
131 SAVU_BIN_ATTRIBUTE_R(info, INFO), 132 SAVU_BIN_ATTRIBUTE_R(info, INFO),
133 SAVU_BIN_ATTRIBUTE_RW(sensor, SENSOR),
132 __ATTR_NULL 134 __ATTR_NULL
133}; 135};
134 136
diff --git a/drivers/hid/hid-roccat-savu.h b/drivers/hid/hid-roccat-savu.h
index b15a1bbb66fb..9120ba72087f 100644
--- a/drivers/hid/hid-roccat-savu.h
+++ b/drivers/hid/hid-roccat-savu.h
@@ -21,6 +21,7 @@ enum {
21 SAVU_SIZE_BUTTONS = 0x2f, 21 SAVU_SIZE_BUTTONS = 0x2f,
22 SAVU_SIZE_MACRO = 0x0823, 22 SAVU_SIZE_MACRO = 0x0823,
23 SAVU_SIZE_INFO = 0x08, 23 SAVU_SIZE_INFO = 0x08,
24 SAVU_SIZE_SENSOR = 0x04,
24}; 25};
25 26
26enum savu_control_requests { 27enum savu_control_requests {
@@ -35,6 +36,7 @@ enum savu_commands {
35 SAVU_COMMAND_BUTTONS = 0x7, 36 SAVU_COMMAND_BUTTONS = 0x7,
36 SAVU_COMMAND_MACRO = 0x8, 37 SAVU_COMMAND_MACRO = 0x8,
37 SAVU_COMMAND_INFO = 0x9, 38 SAVU_COMMAND_INFO = 0x9,
39 SAVU_COMMAND_SENSOR = 0xc,
38}; 40};
39 41
40struct savu_mouse_report_special { 42struct savu_mouse_report_special {