summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDiogo Kastrup <dk@bighost.com.br>2007-06-19 14:16:15 +0200
committerJiri Kosina <jkosina@suse.cz>2007-07-09 14:13:35 +0200
commit816cbfda8b5113629707f604660204701e93b7ce (patch)
tree1ce7b6176657f23411d903563d2b7fa484f2e340
parentea9a4a8b0e5a34eca6613e39d21be879d92ecff5 (diff)
HID: fix autocentering of PID devices
When setting the autocentering of PID devices, PID_DIRECTION_ENABLE is not being explicitely set to 1. This results in autocentering working only on the vertical axis when this field is preset to 0. Fix that by setting it explicitely to 1 when preparing the set_effect report for autocentering spring effect. Signed-off-by: Diogo Kastrup <dk@bighost.com.br> Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r--drivers/hid/usbhid/hid-pidff.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/hid/usbhid/hid-pidff.c b/drivers/hid/usbhid/hid-pidff.c
index f5a90e950e6..011326178c0 100644
--- a/drivers/hid/usbhid/hid-pidff.c
+++ b/drivers/hid/usbhid/hid-pidff.c
@@ -738,6 +738,7 @@ static void pidff_autocenter(struct pidff_device *pidff, u16 magnitude)
pidff->set_effect[PID_TRIGGER_BUTTON].value[0] = 0;
pidff->set_effect[PID_TRIGGER_REPEAT_INT].value[0] = 0;
pidff_set(&pidff->set_effect[PID_GAIN], magnitude);
+ pidff->set_effect[PID_DIRECTION_ENABLE].value[0] = 1;
pidff->set_effect[PID_START_DELAY].value[0] = 0;
usbhid_submit_report(pidff->hid, pidff->reports[PID_SET_EFFECT],