* Re: New HID device support [not found] <1236096277.26321.29.camel@paradox.pz.local> @ 2009-03-03 16:21 ` Jiri Kosina 2009-03-03 18:01 ` Jason Noble 2009-03-03 19:04 ` Jason Noble 0 siblings, 2 replies; 15+ messages in thread From: Jiri Kosina @ 2009-03-03 16:21 UTC (permalink / raw) To: Jason Noble; +Cc: lkml On Tue, 3 Mar 2009, Jason Noble wrote: > Jiri, > After a bit of googling I'm pretty sure you are the person to ask for > help. > > I have a new Kensington Slimblade Trackball > http://us.kensington.com/html/16632.html. This device just recently > started shipping, I'm probably one of the first few people to connect > one to linux. > > Using "evtest /dev/input/eventX" two of the four buttons are not > registering at all. With usbmon I can see data coming from these > buttons. > Can you help? If so, what info do you need? > If not, can you point me in the correct direction? Could you please compile your kernel with CONFIG_HID_DEBUG, modprobe the 'hid' module with 'debug=2' option, and send me the output that appears in dmesg when you - connect the device - press the non-working buttons Thanks, -- Jiri Kosina SUSE Labs ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-03 16:21 ` New HID device support Jiri Kosina @ 2009-03-03 18:01 ` Jason Noble 2009-03-03 18:04 ` Jiri Kosina 2009-03-03 19:04 ` Jason Noble 1 sibling, 1 reply; 15+ messages in thread From: Jason Noble @ 2009-03-03 18:01 UTC (permalink / raw) To: Jiri Kosina; +Cc: lkml On Tue, 2009-03-03 at 17:21 +0100, Jiri Kosina wrote: > On Tue, 3 Mar 2009, Jason Noble wrote: > > > Jiri, > > After a bit of googling I'm pretty sure you are the person to ask for > > help. > > > > I have a new Kensington Slimblade Trackball > > http://us.kensington.com/html/16632.html. This device just recently > > started shipping, I'm probably one of the first few people to connect > > one to linux. > > > > Using "evtest /dev/input/eventX" two of the four buttons are not > > registering at all. With usbmon I can see data coming from these > > buttons. > > Can you help? If so, what info do you need? > > If not, can you point me in the correct direction? > > Could you please compile your kernel with CONFIG_HID_DEBUG, modprobe the > 'hid' module with 'debug=2' option, and send me the output that appears in > dmesg when you On a monolithic kernel I just pass usbhid.debug=2 at boot correct? > > - connect the device > - press the non-working buttons > > Thanks, > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-03 18:01 ` Jason Noble @ 2009-03-03 18:04 ` Jiri Kosina 0 siblings, 0 replies; 15+ messages in thread From: Jiri Kosina @ 2009-03-03 18:04 UTC (permalink / raw) To: Jason Noble; +Cc: lkml On Tue, 3 Mar 2009, Jason Noble wrote: > > Could you please compile your kernel with CONFIG_HID_DEBUG, modprobe the > > 'hid' module with 'debug=2' option, and send me the output that appears in > > dmesg when you > On a monolithic kernel I just pass usbhid.debug=2 at boot correct? The module accepting the 'debug' option is 'hid', i.e. make this 'hid.debug=2'. -- Jiri Kosina SUSE Labs ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-03 16:21 ` New HID device support Jiri Kosina 2009-03-03 18:01 ` Jason Noble @ 2009-03-03 19:04 ` Jason Noble 2009-03-04 10:45 ` Jiri Kosina 1 sibling, 1 reply; 15+ messages in thread From: Jason Noble @ 2009-03-03 19:04 UTC (permalink / raw) To: Jiri Kosina; +Cc: lkml [-- Attachment #1: Type: text/plain, Size: 1048 bytes --] Attached is the output. Geez, that was a pain. I ended up connecting a PS/2 keyboard and mouse, to stop mucking up the logs. On Tue, 2009-03-03 at 17:21 +0100, Jiri Kosina wrote: > On Tue, 3 Mar 2009, Jason Noble wrote: > > > Jiri, > > After a bit of googling I'm pretty sure you are the person to ask for > > help. > > > > I have a new Kensington Slimblade Trackball > > http://us.kensington.com/html/16632.html. This device just recently > > started shipping, I'm probably one of the first few people to connect > > one to linux. > > > > Using "evtest /dev/input/eventX" two of the four buttons are not > > registering at all. With usbmon I can see data coming from these > > buttons. > > Can you help? If so, what info do you need? > > If not, can you point me in the correct direction? > > Could you please compile your kernel with CONFIG_HID_DEBUG, modprobe the > 'hid' module with 'debug=2' option, and send me the output that appears in > dmesg when you > > - connect the device > - press the non-working buttons > > Thanks, > [-- Attachment #2: Type: text/plain, Size: 3598 bytes --] usb 6-2: new low speed USB device using uhci_hcd and address 2 usb 6-2: configuration #1 chosen from 1 choice drivers/hid/usbhid/hid-core.c: HID probe called for ifnum 0 drivers/hid/usbhid/hid-core.c: report descriptor (size 75, read 1) = 05 01 09 02 a1 01 09 01 a1 00 05 09 19 01 29 02 15 00 25 01 95 02 75 01 81 02 95 01 75 06 81 03 05 01 09 30 09 31 09 38 15 81 25 7f 75 08 95 03 81 06 06 00 ff 19 01 29 02 15 00 25 01 95 02 75 01 81 02 95 01 75 06 81 03 c0 c0 INPUT[INPUT] Field(0) Physical(GenericDesktop.Pointer) Usage(2) Button.0001 Button.0002 Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(2) Report Offset(0) Flags( Variable Absolute ) Field(1) Physical(GenericDesktop.Pointer) Usage(3) GenericDesktop.X GenericDesktop.Y GenericDesktop.Wheel Logical Minimum(-127) Logical Maximum(127) Report Size(8) Report Count(3) Report Offset(8) Flags( Variable Relative ) Field(2) Physical(GenericDesktop.Pointer) Usage(2) ff00.0001 ff00.0002 Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(2) Report Offset(32) Flags( Variable Absolute ) drivers/hid/hid-input.c: Mapping: Button.0001 ---> Key.LeftBtn drivers/hid/hid-input.c: Mapping: Button.0002 ---> Key.RightBtn drivers/hid/hid-input.c: Mapping: GenericDesktop.X ---> Relative.X drivers/hid/hid-input.c: Mapping: GenericDesktop.Y ---> Relative.Y drivers/hid/hid-input.c: Mapping: GenericDesktop.Wheel ---> Relative.Wheel drivers/hid/hid-input.c: Mapping: ff00.0001 ---> IGNORED drivers/hid/hid-input.c: Mapping: ff00.0002 ---> IGNORED input: Kensington Kensington Slimblade Trackball as /class/input/input7 generic-usb 0003:047D:2041.0002: input,hidraw1: USB HID v1.10 Mouse [Kensington Kensington Slimblade Trackball] on usb-0000:00:1a.0-2/input0 usb 6-2: New USB device found, idVendor=047d, idProduct=2041 usb 6-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 6-2: Product: Kensington Slimblade Trackball usb 6-2: Manufacturer: Kensington drivers/hid/hid-core.c: report (size 5) (unnumbered) drivers/hid/hid-core.c: report 0 (size 5) = 00 00 00 00 01 hid-debug: input Button.0001 = 0 hid-debug: input Button.0002 = 0 hid-debug: input GenericDesktop.X = 0 hid-debug: input GenericDesktop.Y = 0 hid-debug: input GenericDesktop.Wheel = 0 hid-debug: input ff00.0001 = 1 hid-debug: input ff00.0002 = 0 drivers/hid/hid-core.c: report (size 5) (unnumbered) drivers/hid/hid-core.c: report 0 (size 5) = 00 00 00 00 00 hid-debug: input Button.0001 = 0 hid-debug: input Button.0002 = 0 hid-debug: input GenericDesktop.X = 0 hid-debug: input GenericDesktop.Y = 0 hid-debug: input GenericDesktop.Wheel = 0 hid-debug: input ff00.0001 = 0 hid-debug: input ff00.0002 = 0 drivers/hid/hid-core.c: report (size 5) (unnumbered) drivers/hid/hid-core.c: report 0 (size 5) = 00 00 00 00 02 hid-debug: input Button.0001 = 0 hid-debug: input Button.0002 = 0 hid-debug: input GenericDesktop.X = 0 hid-debug: input GenericDesktop.Y = 0 hid-debug: input GenericDesktop.Wheel = 0 hid-debug: input ff00.0001 = 0 hid-debug: input ff00.0002 = 1 drivers/hid/hid-core.c: report (size 5) (unnumbered) drivers/hid/hid-core.c: report 0 (size 5) = 00 00 00 00 00 hid-debug: input Button.0001 = 0 hid-debug: input Button.0002 = 0 hid-debug: input GenericDesktop.X = 0 hid-debug: input GenericDesktop.Y = 0 hid-debug: input GenericDesktop.Wheel = 0 hid-debug: input ff00.0001 = 0 hid-debug: input ff00.0002 = 0 ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-03 19:04 ` Jason Noble @ 2009-03-04 10:45 ` Jiri Kosina 2009-03-04 13:08 ` Jason Noble 2009-03-04 13:15 ` Jason Noble 0 siblings, 2 replies; 15+ messages in thread From: Jiri Kosina @ 2009-03-04 10:45 UTC (permalink / raw) To: Jason Noble; +Cc: lkml On Tue, 3 Mar 2009, Jason Noble wrote: > Attached is the output. Thanks. Does the driver below make your device work properly? From: Jiri Kosina <jkosina@suse.cz> HID: support for Kensington silblade trackball Establish proper button mappings for 0x47d/0x2041 device. Signed-off-by: Jiri Kosina <jkosina@suse.cz> diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig index 9cc662c..c16fc4f 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig @@ -150,6 +150,13 @@ config HID_GYRATION ---help--- Support for Gyration remote control. +config HID_KENSINGTON + tristate "Kensington" if EMBEDDED + depends on USB_HID + default !EMBEDDED + ---help--- + Support for Kensington Slimblade Trackball. + config HID_LOGITECH tristate "Logitech" if EMBEDDED depends on USB_HID diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile index 0fdbda6..53e1331 100644 --- a/drivers/hid/Makefile +++ b/drivers/hid/Makefile @@ -29,6 +29,7 @@ obj-$(CONFIG_HID_CYPRESS) += hid-cypress.o obj-$(CONFIG_DRAGONRISE_FF) += hid-drff.o obj-$(CONFIG_HID_EZKEY) += hid-ezkey.o obj-$(CONFIG_HID_GYRATION) += hid-gyration.o +obj-$(CONFIG_HID_KENSINGTON) += hid-kensington.o obj-$(CONFIG_HID_LOGITECH) += hid-logitech.o obj-$(CONFIG_HID_MICROSOFT) += hid-microsoft.o obj-$(CONFIG_HID_MONTEREY) += hid-monterey.o diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c index 941e7d6..320442c 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c @@ -1270,6 +1270,7 @@ static const struct hid_device_id hid_blacklist[] = { { HID_USB_DEVICE(USB_VENDOR_ID_GREENASIA, 0x0012) }, { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE) }, { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE_2) }, + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, { HID_USB_DEVICE(USB_VENDOR_ID_LABTEC, USB_DEVICE_ID_LABTEC_WIRELESS_KEYBOARD) }, { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER) }, { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_S510_RECEIVER) }, diff --git a/drivers/hid/hid-dummy.c b/drivers/hid/hid-dummy.c index 536aa15..28815fd 100644 --- a/drivers/hid/hid-dummy.c +++ b/drivers/hid/hid-dummy.c @@ -37,6 +37,9 @@ static int __init hid_dummy_init(void) #ifdef CONFIG_HID_GYRATION_MODULE HID_COMPAT_CALL_DRIVER(gyration); #endif +#ifdef CONFIG_HID_KENSINGTON_MODULE + HID_COMPAT_CALL_DRIVER(kensington); +#endif #ifdef CONFIG_HID_LOGITECH_MODULE HID_COMPAT_CALL_DRIVER(logitech); #endif diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 6c730de..c3c9e63 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -274,6 +274,9 @@ #define USB_DEVICE_ID_LD_POWERCONTROL 0x2030 #define USB_DEVICE_ID_LD_MACHINETEST 0x2040 +#define USB_VENDOR_ID_KENSINGTON 0x047d +#define USB_DEVICE_ID_KS_SLIMBLADE 0x2041 + #define USB_VENDOR_ID_LOGITECH 0x046d #define USB_DEVICE_ID_LOGITECH_RECEIVER 0xc101 #define USB_DEVICE_ID_LOGITECH_HARMONY_FIRST 0xc110 diff --git a/drivers/hid/hid-kensington.c b/drivers/hid/hid-kensington.c new file mode 100644 index 0000000..aff0e24 --- /dev/null +++ b/drivers/hid/hid-kensington.c @@ -0,0 +1,65 @@ +/* + * HID driver for Kensigton special device + * + * Copyright (c) 2009 Jiri Kosina + */ + +/* + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + */ + +#include <linux/device.h> +#include <linux/input.h> +#include <linux/hid.h> +#include <linux/module.h> + +#include "hid-ids.h" + +#define ks_map_key(c) hid_map_usage(hi, usage, bit, max, EV_KEY, (c)) + +static int ks_input_mapping(struct hid_device *hdev, struct hid_input *hi, + struct hid_field *field, struct hid_usage *usage, + unsigned long **bit, int *max) +{ + if ((usage->hid & HID_USAGE_PAGE) != HID_UP_MSVENDOR) + return 0; + + switch (usage->hid & HID_USAGE) { + case 0x01: ks_map_key(BTN_2); break; + case 0x02: ks_map_key(BTN_3); break; + default: + return 0; + } + return 1; +} + +static const struct hid_device_id ks_devices[] = { + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, + { } +}; +MODULE_DEVICE_TABLE(hid, ks_devices); + +static struct hid_driver ks_driver = { + .name = "kensington", + .id_table = ks_devices, + .input_mapping = ks_input_mapping, +}; + +static int ks_init(void) +{ + return hid_register_driver(&ks_driver); +} + +static void ks_exit(void) +{ + hid_unregister_driver(&ks_driver); +} + +module_init(ks_init); +module_exit(ks_exit); +MODULE_LICENSE("GPL"); + +HID_COMPAT_LOAD_DRIVER(kensington); ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 10:45 ` Jiri Kosina @ 2009-03-04 13:08 ` Jason Noble 2009-03-04 13:15 ` Jason Noble 1 sibling, 0 replies; 15+ messages in thread From: Jason Noble @ 2009-03-04 13:08 UTC (permalink / raw) To: Jiri Kosina; +Cc: lkml Should this apply against 2.6.28.7? Sorry, I'm probably doing something wrong, I've only ever applied whole kernel patches. cd /usr/src patch -p0 < patch-file-name-here On Wed, 2009-03-04 at 11:45 +0100, Jiri Kosina wrote: > On Tue, 3 Mar 2009, Jason Noble wrote: > > > Attached is the output. > > Thanks. Does the driver below make your device work properly? > > > From: Jiri Kosina <jkosina@suse.cz> > > HID: support for Kensington silblade trackball > > Establish proper button mappings for 0x47d/0x2041 device. > > Signed-off-by: Jiri Kosina <jkosina@suse.cz> > > diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig > index 9cc662c..c16fc4f 100644 > --- a/drivers/hid/Kconfig > +++ b/drivers/hid/Kconfig > @@ -150,6 +150,13 @@ config HID_GYRATION > ---help--- > Support for Gyration remote control. > > +config HID_KENSINGTON > + tristate "Kensington" if EMBEDDED > + depends on USB_HID > + default !EMBEDDED > + ---help--- > + Support for Kensington Slimblade Trackball. > + > config HID_LOGITECH > tristate "Logitech" if EMBEDDED > depends on USB_HID > diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile > index 0fdbda6..53e1331 100644 > --- a/drivers/hid/Makefile > +++ b/drivers/hid/Makefile > @@ -29,6 +29,7 @@ obj-$(CONFIG_HID_CYPRESS) += hid-cypress.o > obj-$(CONFIG_DRAGONRISE_FF) += hid-drff.o > obj-$(CONFIG_HID_EZKEY) += hid-ezkey.o > obj-$(CONFIG_HID_GYRATION) += hid-gyration.o > +obj-$(CONFIG_HID_KENSINGTON) += hid-kensington.o > obj-$(CONFIG_HID_LOGITECH) += hid-logitech.o > obj-$(CONFIG_HID_MICROSOFT) += hid-microsoft.o > obj-$(CONFIG_HID_MONTEREY) += hid-monterey.o > diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c > index 941e7d6..320442c 100644 > --- a/drivers/hid/hid-core.c > +++ b/drivers/hid/hid-core.c > @@ -1270,6 +1270,7 @@ static const struct hid_device_id hid_blacklist[] = { > { HID_USB_DEVICE(USB_VENDOR_ID_GREENASIA, 0x0012) }, > { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE) }, > { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE_2) }, > + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LABTEC, USB_DEVICE_ID_LABTEC_WIRELESS_KEYBOARD) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_S510_RECEIVER) }, > diff --git a/drivers/hid/hid-dummy.c b/drivers/hid/hid-dummy.c > index 536aa15..28815fd 100644 > --- a/drivers/hid/hid-dummy.c > +++ b/drivers/hid/hid-dummy.c > @@ -37,6 +37,9 @@ static int __init hid_dummy_init(void) > #ifdef CONFIG_HID_GYRATION_MODULE > HID_COMPAT_CALL_DRIVER(gyration); > #endif > +#ifdef CONFIG_HID_KENSINGTON_MODULE > + HID_COMPAT_CALL_DRIVER(kensington); > +#endif > #ifdef CONFIG_HID_LOGITECH_MODULE > HID_COMPAT_CALL_DRIVER(logitech); > #endif > diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h > index 6c730de..c3c9e63 100644 > --- a/drivers/hid/hid-ids.h > +++ b/drivers/hid/hid-ids.h > @@ -274,6 +274,9 @@ > #define USB_DEVICE_ID_LD_POWERCONTROL 0x2030 > #define USB_DEVICE_ID_LD_MACHINETEST 0x2040 > > +#define USB_VENDOR_ID_KENSINGTON 0x047d > +#define USB_DEVICE_ID_KS_SLIMBLADE 0x2041 > + > #define USB_VENDOR_ID_LOGITECH 0x046d > #define USB_DEVICE_ID_LOGITECH_RECEIVER 0xc101 > #define USB_DEVICE_ID_LOGITECH_HARMONY_FIRST 0xc110 > diff --git a/drivers/hid/hid-kensington.c b/drivers/hid/hid-kensington.c > new file mode 100644 > index 0000000..aff0e24 > --- /dev/null > +++ b/drivers/hid/hid-kensington.c > @@ -0,0 +1,65 @@ > +/* > + * HID driver for Kensigton special device > + * > + * Copyright (c) 2009 Jiri Kosina > + */ > + > +/* > + * This program is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License as published by the Free > + * Software Foundation; either version 2 of the License, or (at your option) > + * any later version. > + */ > + > +#include <linux/device.h> > +#include <linux/input.h> > +#include <linux/hid.h> > +#include <linux/module.h> > + > +#include "hid-ids.h" > + > +#define ks_map_key(c) hid_map_usage(hi, usage, bit, max, EV_KEY, (c)) > + > +static int ks_input_mapping(struct hid_device *hdev, struct hid_input *hi, > + struct hid_field *field, struct hid_usage *usage, > + unsigned long **bit, int *max) > +{ > + if ((usage->hid & HID_USAGE_PAGE) != HID_UP_MSVENDOR) > + return 0; > + > + switch (usage->hid & HID_USAGE) { > + case 0x01: ks_map_key(BTN_2); break; > + case 0x02: ks_map_key(BTN_3); break; > + default: > + return 0; > + } > + return 1; > +} > + > +static const struct hid_device_id ks_devices[] = { > + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, > + { } > +}; > +MODULE_DEVICE_TABLE(hid, ks_devices); > + > +static struct hid_driver ks_driver = { > + .name = "kensington", > + .id_table = ks_devices, > + .input_mapping = ks_input_mapping, > +}; > + > +static int ks_init(void) > +{ > + return hid_register_driver(&ks_driver); > +} > + > +static void ks_exit(void) > +{ > + hid_unregister_driver(&ks_driver); > +} > + > +module_init(ks_init); > +module_exit(ks_exit); > +MODULE_LICENSE("GPL"); > + > +HID_COMPAT_LOAD_DRIVER(kensington); ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 10:45 ` Jiri Kosina 2009-03-04 13:08 ` Jason Noble @ 2009-03-04 13:15 ` Jason Noble 2009-03-04 13:20 ` Jiri Kosina 1 sibling, 1 reply; 15+ messages in thread From: Jason Noble @ 2009-03-04 13:15 UTC (permalink / raw) To: Jiri Kosina; +Cc: lkml 2.6.28.7 patching file a/drivers/hid/Kconfig Hunk #1 succeeded at 157 with fuzz 2 (offset 7 lines). patching file a/drivers/hid/Makefile Hunk #1 FAILED at 29. 1 out of 1 hunk FAILED -- saving rejects to file a/drivers/hid/Makefile.rej patching file a/drivers/hid/hid-core.c Hunk #1 FAILED at 1270. 1 out of 1 hunk FAILED -- saving rejects to file a/drivers/hid/hid-core.c.rej patching file a/drivers/hid/hid-dummy.c Hunk #1 succeeded at 34 with fuzz 2 (offset -3 lines). patching file a/drivers/hid/hid-ids.h Hunk #1 FAILED at 274. 1 out of 1 hunk FAILED -- saving rejects to file a/drivers/hid/hid-ids.h.rej patching file b/drivers/hid/hid-kensington.c On Wed, 2009-03-04 at 11:45 +0100, Jiri Kosina wrote: > On Tue, 3 Mar 2009, Jason Noble wrote: > > > Attached is the output. > > Thanks. Does the driver below make your device work properly? > > > From: Jiri Kosina <jkosina@suse.cz> > > HID: support for Kensington silblade trackball > > Establish proper button mappings for 0x47d/0x2041 device. > > Signed-off-by: Jiri Kosina <jkosina@suse.cz> > > diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig > index 9cc662c..c16fc4f 100644 > --- a/drivers/hid/Kconfig > +++ b/drivers/hid/Kconfig > @@ -150,6 +150,13 @@ config HID_GYRATION > ---help--- > Support for Gyration remote control. > > +config HID_KENSINGTON > + tristate "Kensington" if EMBEDDED > + depends on USB_HID > + default !EMBEDDED > + ---help--- > + Support for Kensington Slimblade Trackball. > + > config HID_LOGITECH > tristate "Logitech" if EMBEDDED > depends on USB_HID > diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile > index 0fdbda6..53e1331 100644 > --- a/drivers/hid/Makefile > +++ b/drivers/hid/Makefile > @@ -29,6 +29,7 @@ obj-$(CONFIG_HID_CYPRESS) += hid-cypress.o > obj-$(CONFIG_DRAGONRISE_FF) += hid-drff.o > obj-$(CONFIG_HID_EZKEY) += hid-ezkey.o > obj-$(CONFIG_HID_GYRATION) += hid-gyration.o > +obj-$(CONFIG_HID_KENSINGTON) += hid-kensington.o > obj-$(CONFIG_HID_LOGITECH) += hid-logitech.o > obj-$(CONFIG_HID_MICROSOFT) += hid-microsoft.o > obj-$(CONFIG_HID_MONTEREY) += hid-monterey.o > diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c > index 941e7d6..320442c 100644 > --- a/drivers/hid/hid-core.c > +++ b/drivers/hid/hid-core.c > @@ -1270,6 +1270,7 @@ static const struct hid_device_id hid_blacklist[] = { > { HID_USB_DEVICE(USB_VENDOR_ID_GREENASIA, 0x0012) }, > { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE) }, > { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE_2) }, > + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LABTEC, USB_DEVICE_ID_LABTEC_WIRELESS_KEYBOARD) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_S510_RECEIVER) }, > diff --git a/drivers/hid/hid-dummy.c b/drivers/hid/hid-dummy.c > index 536aa15..28815fd 100644 > --- a/drivers/hid/hid-dummy.c > +++ b/drivers/hid/hid-dummy.c > @@ -37,6 +37,9 @@ static int __init hid_dummy_init(void) > #ifdef CONFIG_HID_GYRATION_MODULE > HID_COMPAT_CALL_DRIVER(gyration); > #endif > +#ifdef CONFIG_HID_KENSINGTON_MODULE > + HID_COMPAT_CALL_DRIVER(kensington); > +#endif > #ifdef CONFIG_HID_LOGITECH_MODULE > HID_COMPAT_CALL_DRIVER(logitech); > #endif > diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h > index 6c730de..c3c9e63 100644 > --- a/drivers/hid/hid-ids.h > +++ b/drivers/hid/hid-ids.h > @@ -274,6 +274,9 @@ > #define USB_DEVICE_ID_LD_POWERCONTROL 0x2030 > #define USB_DEVICE_ID_LD_MACHINETEST 0x2040 > > +#define USB_VENDOR_ID_KENSINGTON 0x047d > +#define USB_DEVICE_ID_KS_SLIMBLADE 0x2041 > + > #define USB_VENDOR_ID_LOGITECH 0x046d > #define USB_DEVICE_ID_LOGITECH_RECEIVER 0xc101 > #define USB_DEVICE_ID_LOGITECH_HARMONY_FIRST 0xc110 > diff --git a/drivers/hid/hid-kensington.c b/drivers/hid/hid-kensington.c > new file mode 100644 > index 0000000..aff0e24 > --- /dev/null > +++ b/drivers/hid/hid-kensington.c > @@ -0,0 +1,65 @@ > +/* > + * HID driver for Kensigton special device > + * > + * Copyright (c) 2009 Jiri Kosina > + */ > + > +/* > + * This program is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License as published by the Free > + * Software Foundation; either version 2 of the License, or (at your option) > + * any later version. > + */ > + > +#include <linux/device.h> > +#include <linux/input.h> > +#include <linux/hid.h> > +#include <linux/module.h> > + > +#include "hid-ids.h" > + > +#define ks_map_key(c) hid_map_usage(hi, usage, bit, max, EV_KEY, (c)) > + > +static int ks_input_mapping(struct hid_device *hdev, struct hid_input *hi, > + struct hid_field *field, struct hid_usage *usage, > + unsigned long **bit, int *max) > +{ > + if ((usage->hid & HID_USAGE_PAGE) != HID_UP_MSVENDOR) > + return 0; > + > + switch (usage->hid & HID_USAGE) { > + case 0x01: ks_map_key(BTN_2); break; > + case 0x02: ks_map_key(BTN_3); break; > + default: > + return 0; > + } > + return 1; > +} > + > +static const struct hid_device_id ks_devices[] = { > + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, > + { } > +}; > +MODULE_DEVICE_TABLE(hid, ks_devices); > + > +static struct hid_driver ks_driver = { > + .name = "kensington", > + .id_table = ks_devices, > + .input_mapping = ks_input_mapping, > +}; > + > +static int ks_init(void) > +{ > + return hid_register_driver(&ks_driver); > +} > + > +static void ks_exit(void) > +{ > + hid_unregister_driver(&ks_driver); > +} > + > +module_init(ks_init); > +module_exit(ks_exit); > +MODULE_LICENSE("GPL"); > + > +HID_COMPAT_LOAD_DRIVER(kensington); > -- > 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/ ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 13:15 ` Jason Noble @ 2009-03-04 13:20 ` Jiri Kosina 2009-03-04 13:34 ` Jason Noble 0 siblings, 1 reply; 15+ messages in thread From: Jiri Kosina @ 2009-03-04 13:20 UTC (permalink / raw) To: Jason Noble; +Cc: lkml On Wed, 4 Mar 2009, Jason Noble wrote: > 2.6.28.7 > > patching file a/drivers/hid/Kconfig > Hunk #1 succeeded at 157 with fuzz 2 (offset 7 lines). > patching file a/drivers/hid/Makefile > Hunk #1 FAILED at 29. > 1 out of 1 hunk FAILED -- saving rejects to file > a/drivers/hid/Makefile.rej > patching file a/drivers/hid/hid-core.c > Hunk #1 FAILED at 1270. > 1 out of 1 hunk FAILED -- saving rejects to file > a/drivers/hid/hid-core.c.rej > patching file a/drivers/hid/hid-dummy.c > Hunk #1 succeeded at 34 with fuzz 2 (offset -3 lines). > patching file a/drivers/hid/hid-ids.h > Hunk #1 FAILED at 274. > 1 out of 1 hunk FAILED -- saving rejects to file > a/drivers/hid/hid-ids.h.rej > patching file b/drivers/hid/hid-kensington.c The patch was against HID development tree. Please try the one below instead, I have refreshed it to apply on top of 2.6.28.7 diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig index b4fd8ca..d1669d4 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig @@ -157,6 +157,13 @@ config HID_GYRATION ---help--- Support for Gyration remote control. +config HID_KENSINGTON + tristate "Kensington" if EMBEDDED + depends on USB_HID + default !EMBEDDED + ---help--- + Support for Kensington Slimblade Trackball. + config HID_LOGITECH tristate "Logitech" if EMBEDDED depends on USB_HID diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile index b09e43e..feb3682 100644 --- a/drivers/hid/Makefile +++ b/drivers/hid/Makefile @@ -30,6 +30,7 @@ obj-$(CONFIG_HID_CYPRESS) += hid-cypress.o obj-$(CONFIG_HID_DELL) += hid-dell.o obj-$(CONFIG_HID_EZKEY) += hid-ezkey.o obj-$(CONFIG_HID_GYRATION) += hid-gyration.o +obj-$(CONFIG_HID_KENSINGTON) += hid-kensington.o obj-$(CONFIG_HID_LOGITECH) += hid-logitech.o obj-$(CONFIG_HID_MICROSOFT) += hid-microsoft.o obj-$(CONFIG_HID_MONTEREY) += hid-monterey.o diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c index 40df3e1..d0e1e3d 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c @@ -1271,6 +1271,7 @@ static const struct hid_device_id hid_blacklist[] = { { HID_USB_DEVICE(USB_VENDOR_ID_GREENASIA, 0x0003) }, { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE) }, { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE_2) }, + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, { HID_USB_DEVICE(USB_VENDOR_ID_LABTEC, USB_DEVICE_ID_LABTEC_WIRELESS_KEYBOARD) }, { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER) }, { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_S510_RECEIVER) }, diff --git a/drivers/hid/hid-dummy.c b/drivers/hid/hid-dummy.c index e148f86..128b873 100644 --- a/drivers/hid/hid-dummy.c +++ b/drivers/hid/hid-dummy.c @@ -34,6 +34,9 @@ static int __init hid_dummy_init(void) #ifdef CONFIG_HID_GYRATION_MODULE HID_COMPAT_CALL_DRIVER(gyration); #endif +#ifdef CONFIG_HID_KENSINGTON_MODULE + HID_COMPAT_CALL_DRIVER(kensington); +#endif #ifdef CONFIG_HID_LOGITECH_MODULE HID_COMPAT_CALL_DRIVER(logitech); #endif diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 3928969..11f9f6e 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -279,6 +279,9 @@ #define USB_DEVICE_ID_LD_POWERCONTROL 0x2030 #define USB_DEVICE_ID_LD_MACHINETEST 0x2040 +#define USB_VENDOR_ID_KENSINGTON 0x047d +#define USB_DEVICE_ID_KS_SLIMBLADE 0x2041 + #define USB_VENDOR_ID_LOGITECH 0x046d #define USB_DEVICE_ID_LOGITECH_RECEIVER 0xc101 #define USB_DEVICE_ID_LOGITECH_HARMONY_FIRST 0xc110 diff --git a/drivers/hid/hid-kensington.c b/drivers/hid/hid-kensington.c new file mode 100644 index 0000000..aff0e24 --- /dev/null +++ b/drivers/hid/hid-kensington.c @@ -0,0 +1,65 @@ +/* + * HID driver for Kensigton special device + * + * Copyright (c) 2009 Jiri Kosina + */ + +/* + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + */ + +#include <linux/device.h> +#include <linux/input.h> +#include <linux/hid.h> +#include <linux/module.h> + +#include "hid-ids.h" + +#define ks_map_key(c) hid_map_usage(hi, usage, bit, max, EV_KEY, (c)) + +static int ks_input_mapping(struct hid_device *hdev, struct hid_input *hi, + struct hid_field *field, struct hid_usage *usage, + unsigned long **bit, int *max) +{ + if ((usage->hid & HID_USAGE_PAGE) != HID_UP_MSVENDOR) + return 0; + + switch (usage->hid & HID_USAGE) { + case 0x01: ks_map_key(BTN_2); break; + case 0x02: ks_map_key(BTN_3); break; + default: + return 0; + } + return 1; +} + +static const struct hid_device_id ks_devices[] = { + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, + { } +}; +MODULE_DEVICE_TABLE(hid, ks_devices); + +static struct hid_driver ks_driver = { + .name = "kensington", + .id_table = ks_devices, + .input_mapping = ks_input_mapping, +}; + +static int ks_init(void) +{ + return hid_register_driver(&ks_driver); +} + +static void ks_exit(void) +{ + hid_unregister_driver(&ks_driver); +} + +module_init(ks_init); +module_exit(ks_exit); +MODULE_LICENSE("GPL"); + +HID_COMPAT_LOAD_DRIVER(kensington); ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 13:20 ` Jiri Kosina @ 2009-03-04 13:34 ` Jason Noble 2009-03-04 13:37 ` Jiri Kosina 0 siblings, 1 reply; 15+ messages in thread From: Jason Noble @ 2009-03-04 13:34 UTC (permalink / raw) To: Jiri Kosina; +Cc: lkml [-- Attachment #1: Type: text/plain, Size: 6679 bytes --] Sorry to be such a bother. Attached .rej files if they help. clean just untared 2.6.28.7 patching file a/drivers/hid/Kconfig Hunk #1 succeeded at 157 with fuzz 2. patching file a/drivers/hid/Makefile Hunk #1 FAILED at 30. 1 out of 1 hunk FAILED -- saving rejects to file a/drivers/hid/Makefile.rej patching file a/drivers/hid/hid-core.c Hunk #1 FAILED at 1271. 1 out of 1 hunk FAILED -- saving rejects to file a/drivers/hid/hid-core.c.rej patching file a/drivers/hid/hid-dummy.c Hunk #1 succeeded at 34 with fuzz 2. patching file a/drivers/hid/hid-ids.h Hunk #1 FAILED at 279. 1 out of 1 hunk FAILED -- saving rejects to file a/drivers/hid/hid-ids.h.rej patching file b/drivers/hid/hid-kensington.c paradox:/usr/src# ls a/drivers/hid/Makefile.rej a/drivers/hid/Makefile.rej On Wed, 2009-03-04 at 14:20 +0100, Jiri Kosina wrote: > On Wed, 4 Mar 2009, Jason Noble wrote: > > > 2.6.28.7 > > > > patching file a/drivers/hid/Kconfig > > Hunk #1 succeeded at 157 with fuzz 2 (offset 7 lines). > > patching file a/drivers/hid/Makefile > > Hunk #1 FAILED at 29. > > 1 out of 1 hunk FAILED -- saving rejects to file > > a/drivers/hid/Makefile.rej > > patching file a/drivers/hid/hid-core.c > > Hunk #1 FAILED at 1270. > > 1 out of 1 hunk FAILED -- saving rejects to file > > a/drivers/hid/hid-core.c.rej > > patching file a/drivers/hid/hid-dummy.c > > Hunk #1 succeeded at 34 with fuzz 2 (offset -3 lines). > > patching file a/drivers/hid/hid-ids.h > > Hunk #1 FAILED at 274. > > 1 out of 1 hunk FAILED -- saving rejects to file > > a/drivers/hid/hid-ids.h.rej > > patching file b/drivers/hid/hid-kensington.c > > The patch was against HID development tree. > > Please try the one below instead, I have refreshed it to apply on top of > 2.6.28.7 > > > diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig > index b4fd8ca..d1669d4 100644 > --- a/drivers/hid/Kconfig > +++ b/drivers/hid/Kconfig > @@ -157,6 +157,13 @@ config HID_GYRATION > ---help--- > Support for Gyration remote control. > > +config HID_KENSINGTON > + tristate "Kensington" if EMBEDDED > + depends on USB_HID > + default !EMBEDDED > + ---help--- > + Support for Kensington Slimblade Trackball. > + > config HID_LOGITECH > tristate "Logitech" if EMBEDDED > depends on USB_HID > diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile > index b09e43e..feb3682 100644 > --- a/drivers/hid/Makefile > +++ b/drivers/hid/Makefile > @@ -30,6 +30,7 @@ obj-$(CONFIG_HID_CYPRESS) += hid-cypress.o > obj-$(CONFIG_HID_DELL) += hid-dell.o > obj-$(CONFIG_HID_EZKEY) += hid-ezkey.o > obj-$(CONFIG_HID_GYRATION) += hid-gyration.o > +obj-$(CONFIG_HID_KENSINGTON) += hid-kensington.o > obj-$(CONFIG_HID_LOGITECH) += hid-logitech.o > obj-$(CONFIG_HID_MICROSOFT) += hid-microsoft.o > obj-$(CONFIG_HID_MONTEREY) += hid-monterey.o > diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c > index 40df3e1..d0e1e3d 100644 > --- a/drivers/hid/hid-core.c > +++ b/drivers/hid/hid-core.c > @@ -1271,6 +1271,7 @@ static const struct hid_device_id hid_blacklist[] = { > { HID_USB_DEVICE(USB_VENDOR_ID_GREENASIA, 0x0003) }, > { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE) }, > { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE_2) }, > + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LABTEC, USB_DEVICE_ID_LABTEC_WIRELESS_KEYBOARD) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER) }, > { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_S510_RECEIVER) }, > diff --git a/drivers/hid/hid-dummy.c b/drivers/hid/hid-dummy.c > index e148f86..128b873 100644 > --- a/drivers/hid/hid-dummy.c > +++ b/drivers/hid/hid-dummy.c > @@ -34,6 +34,9 @@ static int __init hid_dummy_init(void) > #ifdef CONFIG_HID_GYRATION_MODULE > HID_COMPAT_CALL_DRIVER(gyration); > #endif > +#ifdef CONFIG_HID_KENSINGTON_MODULE > + HID_COMPAT_CALL_DRIVER(kensington); > +#endif > #ifdef CONFIG_HID_LOGITECH_MODULE > HID_COMPAT_CALL_DRIVER(logitech); > #endif > diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h > index 3928969..11f9f6e 100644 > --- a/drivers/hid/hid-ids.h > +++ b/drivers/hid/hid-ids.h > @@ -279,6 +279,9 @@ > #define USB_DEVICE_ID_LD_POWERCONTROL 0x2030 > #define USB_DEVICE_ID_LD_MACHINETEST 0x2040 > > +#define USB_VENDOR_ID_KENSINGTON 0x047d > +#define USB_DEVICE_ID_KS_SLIMBLADE 0x2041 > + > #define USB_VENDOR_ID_LOGITECH 0x046d > #define USB_DEVICE_ID_LOGITECH_RECEIVER 0xc101 > #define USB_DEVICE_ID_LOGITECH_HARMONY_FIRST 0xc110 > diff --git a/drivers/hid/hid-kensington.c b/drivers/hid/hid-kensington.c > new file mode 100644 > index 0000000..aff0e24 > --- /dev/null > +++ b/drivers/hid/hid-kensington.c > @@ -0,0 +1,65 @@ > +/* > + * HID driver for Kensigton special device > + * > + * Copyright (c) 2009 Jiri Kosina > + */ > + > +/* > + * This program is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License as published by the Free > + * Software Foundation; either version 2 of the License, or (at your option) > + * any later version. > + */ > + > +#include <linux/device.h> > +#include <linux/input.h> > +#include <linux/hid.h> > +#include <linux/module.h> > + > +#include "hid-ids.h" > + > +#define ks_map_key(c) hid_map_usage(hi, usage, bit, max, EV_KEY, (c)) > + > +static int ks_input_mapping(struct hid_device *hdev, struct hid_input *hi, > + struct hid_field *field, struct hid_usage *usage, > + unsigned long **bit, int *max) > +{ > + if ((usage->hid & HID_USAGE_PAGE) != HID_UP_MSVENDOR) > + return 0; > + > + switch (usage->hid & HID_USAGE) { > + case 0x01: ks_map_key(BTN_2); break; > + case 0x02: ks_map_key(BTN_3); break; > + default: > + return 0; > + } > + return 1; > +} > + > +static const struct hid_device_id ks_devices[] = { > + { HID_USB_DEVICE(USB_VENDOR_ID_KENSINGTON, USB_DEVICE_ID_KS_SLIMBLADE) }, > + { } > +}; > +MODULE_DEVICE_TABLE(hid, ks_devices); > + > +static struct hid_driver ks_driver = { > + .name = "kensington", > + .id_table = ks_devices, > + .input_mapping = ks_input_mapping, > +}; > + > +static int ks_init(void) > +{ > + return hid_register_driver(&ks_driver); > +} > + > +static void ks_exit(void) > +{ > + hid_unregister_driver(&ks_driver); > +} > + > +module_init(ks_init); > +module_exit(ks_exit); > +MODULE_LICENSE("GPL"); > + > +HID_COMPAT_LOAD_DRIVER(kensington); > -- > 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/ [-- Attachment #2: hid-core.c.rej --] [-- Type: application/x-reject, Size: 1169 bytes --] [-- Attachment #3: hid-ids.h.rej --] [-- Type: application/x-reject, Size: 665 bytes --] [-- Attachment #4: Makefile.rej --] [-- Type: application/x-reject, Size: 762 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 13:34 ` Jason Noble @ 2009-03-04 13:37 ` Jiri Kosina 2009-03-04 14:47 ` Jason Noble 0 siblings, 1 reply; 15+ messages in thread From: Jiri Kosina @ 2009-03-04 13:37 UTC (permalink / raw) To: Jason Noble; +Cc: lkml On Wed, 4 Mar 2009, Jason Noble wrote: > Sorry to be such a bother. > Attached .rej files if they help. > > clean just untared 2.6.28.7 > > patching file a/drivers/hid/Kconfig > Hunk #1 succeeded at 157 with fuzz 2. > patching file a/drivers/hid/Makefile > Hunk #1 FAILED at 30. > 1 out of 1 hunk FAILED -- saving rejects to file > a/drivers/hid/Makefile.rej > patching file a/drivers/hid/hid-core.c > Hunk #1 FAILED at 1271. > 1 out of 1 hunk FAILED -- saving rejects to file > a/drivers/hid/hid-core.c.rej > patching file a/drivers/hid/hid-dummy.c > Hunk #1 succeeded at 34 with fuzz 2. > patching file a/drivers/hid/hid-ids.h > Hunk #1 FAILED at 279. > 1 out of 1 hunk FAILED -- saving rejects to file > a/drivers/hid/hid-ids.h.rej > patching file b/drivers/hid/hid-kensington.c > paradox:/usr/src# ls a/drivers/hid/Makefile.rej > a/drivers/hid/Makefile.rej Odd, the patch I sent you was based on 2.6.28.7. You can just add the lines from .rej files manually, it's only 6 lines of code or so. -- Jiri Kosina SUSE Labs ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 13:37 ` Jiri Kosina @ 2009-03-04 14:47 ` Jason Noble 2009-03-04 15:13 ` Jiri Kosina 0 siblings, 1 reply; 15+ messages in thread From: Jason Noble @ 2009-03-04 14:47 UTC (permalink / raw) To: Jiri Kosina; +Cc: lkml I made a minor tweak. Please include in the official patch. (BTN_2 and BTN_3, are not very useful xev doesn't even see them) - case 0x01: ks_map_key(BTN_2); break; - case 0x02: ks_map_key(BTN_3); break; + case 0x01: ks_map_key(BTN_MIDDLE); break; + case 0x02: ks_map_key(BTN_SIDE); break; Other than that, it works great! You are awesome, thank you very very much!! P.S. I think the failed patch issues were caused by email eating the code format. Manually editing the failed patch files worked. On Wed, 2009-03-04 at 14:37 +0100, Jiri Kosina wrote: > On Wed, 4 Mar 2009, Jason Noble wrote: > > > Sorry to be such a bother. > > Attached .rej files if they help. > > > > clean just untared 2.6.28.7 > > > > patching file a/drivers/hid/Kconfig > > Hunk #1 succeeded at 157 with fuzz 2. > > patching file a/drivers/hid/Makefile > > Hunk #1 FAILED at 30. > > 1 out of 1 hunk FAILED -- saving rejects to file > > a/drivers/hid/Makefile.rej > > patching file a/drivers/hid/hid-core.c > > Hunk #1 FAILED at 1271. > > 1 out of 1 hunk FAILED -- saving rejects to file > > a/drivers/hid/hid-core.c.rej > > patching file a/drivers/hid/hid-dummy.c > > Hunk #1 succeeded at 34 with fuzz 2. > > patching file a/drivers/hid/hid-ids.h > > Hunk #1 FAILED at 279. > > 1 out of 1 hunk FAILED -- saving rejects to file > > a/drivers/hid/hid-ids.h.rej > > patching file b/drivers/hid/hid-kensington.c > > paradox:/usr/src# ls a/drivers/hid/Makefile.rej > > a/drivers/hid/Makefile.rej > > Odd, the patch I sent you was based on 2.6.28.7. > > You can just add the lines from .rej files manually, it's only 6 lines of > code or so. > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 14:47 ` Jason Noble @ 2009-03-04 15:13 ` Jiri Kosina 2009-03-04 15:16 ` Jason Noble 0 siblings, 1 reply; 15+ messages in thread From: Jiri Kosina @ 2009-03-04 15:13 UTC (permalink / raw) To: Jason Noble; +Cc: lkml On Wed, 4 Mar 2009, Jason Noble wrote: > I made a minor tweak. Please include in the official patch. > (BTN_2 and BTN_3, are not very useful xev doesn't even see them) > > - case 0x01: ks_map_key(BTN_2); break; > - case 0x02: ks_map_key(BTN_3); break; > + case 0x01: ks_map_key(BTN_MIDDLE); break; > + case 0x02: ks_map_key(BTN_SIDE); break; > > Other than that, it works great! > > You are awesome, thank you very very much!! Thanks for testing. I will put you in Reported-by:, if you don't mind, and queue the patch patch in my tree. -- Jiri Kosina SUSE Labs ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 15:13 ` Jiri Kosina @ 2009-03-04 15:16 ` Jason Noble 2009-03-04 22:56 ` Jiri Kosina 0 siblings, 1 reply; 15+ messages in thread From: Jason Noble @ 2009-03-04 15:16 UTC (permalink / raw) To: Jiri Kosina; +Cc: lkml No problem, glad to help out. Very glad to get my buttons working. ;-) Do you think this will make its way into 2.6.29? On Wed, 2009-03-04 at 16:13 +0100, Jiri Kosina wrote: > On Wed, 4 Mar 2009, Jason Noble wrote: > > > I made a minor tweak. Please include in the official patch. > > (BTN_2 and BTN_3, are not very useful xev doesn't even see them) > > > > - case 0x01: ks_map_key(BTN_2); break; > > - case 0x02: ks_map_key(BTN_3); break; > > + case 0x01: ks_map_key(BTN_MIDDLE); break; > > + case 0x02: ks_map_key(BTN_SIDE); break; > > > > Other than that, it works great! > > > > You are awesome, thank you very very much!! > > Thanks for testing. I will put you in Reported-by:, if you don't mind, and > queue the patch patch in my tree. > ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 15:16 ` Jason Noble @ 2009-03-04 22:56 ` Jiri Kosina 2009-03-05 12:51 ` Jason Noble 0 siblings, 1 reply; 15+ messages in thread From: Jiri Kosina @ 2009-03-04 22:56 UTC (permalink / raw) To: Jason Noble; +Cc: lkml On Wed, 4 Mar 2009, Jason Noble wrote: > No problem, glad to help out. > Very glad to get my buttons working. ;-) > > Do you think this will make its way into 2.6.29? If there is any urgent bugfix that needs to go to 2.6.29, I will push it altogether. Otherwise it will probably go through 2.6.30 queue. -- Jiri Kosina SUSE Labs ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: New HID device support 2009-03-04 22:56 ` Jiri Kosina @ 2009-03-05 12:51 ` Jason Noble 0 siblings, 0 replies; 15+ messages in thread From: Jason Noble @ 2009-03-05 12:51 UTC (permalink / raw) To: Jiri Kosina; +Cc: lkml Sounds good, thanks again! On Wed, 2009-03-04 at 23:56 +0100, Jiri Kosina wrote: > On Wed, 4 Mar 2009, Jason Noble wrote: > > > No problem, glad to help out. > > Very glad to get my buttons working. ;-) > > > > Do you think this will make its way into 2.6.29? > > If there is any urgent bugfix that needs to go to 2.6.29, I will push it > altogether. Otherwise it will probably go through 2.6.30 queue. > ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2009-03-05 12:52 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1236096277.26321.29.camel@paradox.pz.local>
2009-03-03 16:21 ` New HID device support Jiri Kosina
2009-03-03 18:01 ` Jason Noble
2009-03-03 18:04 ` Jiri Kosina
2009-03-03 19:04 ` Jason Noble
2009-03-04 10:45 ` Jiri Kosina
2009-03-04 13:08 ` Jason Noble
2009-03-04 13:15 ` Jason Noble
2009-03-04 13:20 ` Jiri Kosina
2009-03-04 13:34 ` Jason Noble
2009-03-04 13:37 ` Jiri Kosina
2009-03-04 14:47 ` Jason Noble
2009-03-04 15:13 ` Jiri Kosina
2009-03-04 15:16 ` Jason Noble
2009-03-04 22:56 ` Jiri Kosina
2009-03-05 12:51 ` Jason Noble
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox