recent 2.6.x USB HID input weirdness
From: David S. Miller (davem_at_davemloft.net)
Date: 01/31/05
- Previous message: schwarte_at_p8128-ipad42hodogaya.kanagawa.ocn.ne.jp: "Hi Man! Downloadable D*V*D for adult."
- Next in thread: Marcel Holtmann: "Re: recent 2.6.x USB HID input weirdness"
- Reply: Marcel Holtmann: "Re: recent 2.6.x USB HID input weirdness"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Sun, 30 Jan 2005 21:27:39 -0800 To: linux-kernel@vger.kernel.org
On sparc64 I just started getting this in my kernel logs
on 2.6.x-BK from hidinput_input_event:
warning: event field not found
I added some debugging:
hidinput_input_event: type[4] code [4] value[458759]
hidinput_input_event: type[4] code [4] value[458761]
This is on a Sun Type-6 USB keyboard. It does this for
every key I press. The keys work properly, just the
warning is printed (which makes the console kind of hard
to use :-)
I backed out the most recent change (included below)
to that code and the messages went away.
# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
# 2005/01/27 14:48:48+01:00 vojtech@silver.ucw.cz
# input: Enable scancode event generation in the HID driver. This should allow
# changing HID->event mappings (via EVIOCS*) in the future and make
# debugging easier now.
#
# Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
#
# drivers/usb/input/hid-input.c
# 2005/01/27 14:48:37+01:00 vojtech@silver.ucw.cz +7 -3
# input: Enable scancode event generation in the HID driver. This should allow
# changing HID->event mappings (via EVIOCS*) in the future.
#
diff -Nru a/drivers/usb/input/hid-input.c b/drivers/usb/input/hid-input.c
--- a/drivers/usb/input/hid-input.c 2005-01-30 20:56:15 -08:00
+++ b/drivers/usb/input/hid-input.c 2005-01-30 20:56:15 -08:00
@@ -403,11 +403,12 @@
if (!input)
return;
+ input_regs(input, regs);
+ input_event(input, EV_MSC, MSC_SCAN, usage->hid);
+
if (!usage->type)
return;
- input_regs(input, regs);
-
if (((hid->quirks & HID_QUIRK_2WHEEL_MOUSE_HACK_5) && (usage->hid == 0x00090005))
|| ((hid->quirks & HID_QUIRK_2WHEEL_MOUSE_HACK_7) && (usage->hid == 0x00090007))) {
if (value) hid->quirks |= HID_QUIRK_2WHEEL_MOUSE_HACK_ON;
@@ -574,13 +575,16 @@
hidinput->input.id.product = le16_to_cpu(dev->descriptor.idProduct);
hidinput->input.id.version = le16_to_cpu(dev->descriptor.bcdDevice);
hidinput->input.dev = &hid->intf->dev;
+
+ set_bit(EV_MSC, hidinput->input.evbit);
+ set_bit(MSC_SCAN, hidinput->input.mscbit);
}
for (i = 0; i < report->maxfield; i++)
for (j = 0; j < report->field[i]->maxusage; j++)
hidinput_configure_usage(hidinput, report->field[i],
report->field[i]->usage + j);
-
+
if (hid->quirks & HID_QUIRK_MULTI_INPUT) {
/* This will leave hidinput NULL, so that it
* allocates another one if we have more inputs on
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- Previous message: schwarte_at_p8128-ipad42hodogaya.kanagawa.ocn.ne.jp: "Hi Man! Downloadable D*V*D for adult."
- Next in thread: Marcel Holtmann: "Re: recent 2.6.x USB HID input weirdness"
- Reply: Marcel Holtmann: "Re: recent 2.6.x USB HID input weirdness"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]