[PATCH] usbhid: Add the malfunctioning SiGma Micro chip to the listof hid-quirks

From: Jeremiah Matthey
Date: Tue Aug 16 2011 - 06:06:32 EST


Patch to add SiGma Micro-based keyboards (1c4f:0002) to hid-quirks.

These keyboards dont seem to allow the records to be initialized, and hence a
timeout occurs when the usbhid driver attempts to initialize them. The patch
just adds the signature for these keyboards to the hid-quirks list with the
setting HID_QUIRK_NO_INIT_REPORTS. This removes the 5-10 second wait for the
timeout to occur.

This is technically a resubmit, first time i posted i didnt include the right people in the destination, was just aimed at the list, so might have gone unnoticed. (First (submitted) kernel patch, I'll learn with time :))


diff -ru linux-3.0.1-clean/drivers/hid/hid-ids.h linux-3.0.1-patched/drivers/hid/hid-ids.h
--- linux-3.0.1-clean/drivers/hid/hid-ids.h 2011-08-05 05:59:21.000000000 +0100
+++ linux-3.0.1-patched/drivers/hid/hid-ids.h 2011-08-14 15:25:58.129865922 +0100
@@ -568,6 +568,9 @@
#define USB_DEVICE_ID_SAMSUNG_IR_REMOTE 0x0001
#define USB_DEVICE_ID_SAMSUNG_WIRELESS_KBD_MOUSE 0x0600

+#define USB_VENDOR_ID_SIGMA_MICRO 0x1c4f
+#define USB_DEVICE_ID_SIGMA_MICRO_KEYBOARD 0x0002
+
#define USB_VENDOR_ID_SKYCABLE 0x1223
#define USB_DEVICE_ID_SKYCABLE_WIRELESS_PRESENTER 0x3F07

diff -ru linux-3.0.1-clean/drivers/hid/usbhid/hid-quirks.c linux-3.0.1-patched/drivers/hid/usbhid/hid-quirks.c
--- linux-3.0.1-clean/drivers/hid/usbhid/hid-quirks.c 2011-08-05 05:59:21.000000000 +0100
+++ linux-3.0.1-patched/drivers/hid/usbhid/hid-quirks.c 2011-08-14 15:26:06.289865845 +0100
@@ -89,6 +89,7 @@

{ USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_MULTI_TOUCH, HID_QUIRK_MULTI_INPUT },
{ USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS, HID_QUIRK_MULTI_INPUT },
+ { USB_VENDOR_ID_SIGMA_MICRO, USB_DEVICE_ID_SIGMA_MICRO_KEYBOARD, HID_QUIRK_NO_INIT_REPORTS },
{ 0, 0 }
};

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/