Bug#341035: kernel-source-2.6.8: [PATCH] CH Products USB yoke and pedals recognized but frozen by SET_IDLE
Package: kernel-source-2.6.8
Version: 2.6.8-16
Severity: normal
Tags: patch
The devices
Bus 004 Device 003: ID 068e:00ff CH Products, Inc. Flight Sim Yoke
Bus 004 Device 002: ID 068e:00f2 CH Products, Inc. Flight Sim Pedals
on my machine get recognized but they don't work. cat'ting the
relevant /dev/input/js* devices reports some initial data,
but no axis or button input on any of them produces any change.
flightgear/fgjs/js_demo don't show any input either.
Following the tip at
http://www.qbik.ch/usb/devices/showdev.php?id=587
by Alex Perry, I made the following patch that works perfectly
on my system. A better approach would probably be a configure
option if somebody does need that extra SET_IDLE call.
I'm not x-posting to lkml since 2.6.8 is an ancient source (2.6.14
exists today), but since we only have 2.6.8 in debian archive
as of today, I want it available for other Debian users that
might want to solve the same problem.
--- drivers/usb/input/hid-core.c.orig 2005-11-27 23:53:11.838499336 +0200
+++ drivers/usb/input/hid-core.c 2005-11-27 23:53:05.533457848 +0200
@@ -1309,9 +1309,14 @@ void hid_init_reports(struct hid_device
* bugfree devices and will cause a worst-case extra delay of
* 1ms for buggy ones.
*/
+#if 0 /* vassilii: disabled tipped by Alex Perry's report for an equivalent
+ * change of older (2001) source. This allows the USB CH Products
+ * yoke and pedals to work correctly.
+ */
usb_control_msg(hid->dev, usb_sndctrlpipe(hid->dev, 0),
HID_REQ_SET_IDLE, USB_TYPE_CLASS | USB_RECIP_INTERFACE, (1 << 8),
hid->ifnum, NULL, 0, HZ * USB_CTRL_SET_TIMEOUT);
+#endif
report_enum = hid->report_enum + HID_INPUT_REPORT;
list = report_enum->report_list.next;
-- System Information:
Debian Release: 3.1
APT prefers testing
APT policy: (400, 'testing'), (300, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.8-ilmarinen
Locale: LANG=ru_RU.KOI8-R, LC_CTYPE=ru_RU.KOI8-R (charmap=KOI8-R)
Versions of packages kernel-source-2.6.8 depends on:
ii binutils 2.15-6 The GNU assembler, linker and bina
ii bzip2 1.0.2-7 high-quality block-sorting file co
ii coreutils [fileutils] 5.2.1-2 The GNU core utilities
-- no debconf information
Reply to: