You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
(235) |
Apr
(30) |
May
(32) |
Jun
(86) |
Jul
(81) |
Aug
(108) |
Sep
(27) |
Oct
(22) |
Nov
(34) |
Dec
(10) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(78) |
Feb
(10) |
Mar
(81) |
Apr
(27) |
May
(13) |
Jun
(105) |
Jul
(78) |
Aug
(52) |
Sep
(59) |
Oct
(90) |
Nov
(127) |
Dec
(49) |
2002 |
Jan
(102) |
Feb
(72) |
Mar
(54) |
Apr
(98) |
May
(25) |
Jun
(23) |
Jul
(123) |
Aug
(14) |
Sep
(52) |
Oct
(65) |
Nov
(48) |
Dec
(48) |
2003 |
Jan
(22) |
Feb
(25) |
Mar
(29) |
Apr
(12) |
May
(16) |
Jun
(11) |
Jul
(20) |
Aug
(20) |
Sep
(43) |
Oct
(84) |
Nov
(98) |
Dec
(56) |
2004 |
Jan
(28) |
Feb
(39) |
Mar
(41) |
Apr
(28) |
May
(88) |
Jun
(17) |
Jul
(43) |
Aug
(57) |
Sep
(54) |
Oct
(42) |
Nov
(32) |
Dec
(58) |
2005 |
Jan
(80) |
Feb
(31) |
Mar
(65) |
Apr
(41) |
May
(20) |
Jun
(34) |
Jul
(62) |
Aug
(73) |
Sep
(81) |
Oct
(48) |
Nov
(57) |
Dec
(57) |
2006 |
Jan
(63) |
Feb
(24) |
Mar
(18) |
Apr
(9) |
May
(22) |
Jun
(29) |
Jul
(47) |
Aug
(11) |
Sep
|
Oct
|
Nov
|
Dec
|
2024 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
From: Hugo V. <hvw...@ya...> - 2005-07-08 17:59:28
|
--- "Micah F. Galizia" <mfg...@uw...> wrote: > On Thu, 2005-07-07 at 08:23 -0700, Hugo Vanwoerkom > wrote: > > > > --- "Micah F. Galizia" <mfg...@uw...> wrote: > > > > > On Thu, 2005-07-07 at 04:52 -0700, Hugo > Vanwoerkom > > > wrote: > > > > --- "Micah F. Galizia" <mfg...@uw...> > wrote: > > > > > > > > > Hello again, > > > > > > > > > > Does anyone know what the status of X is WRT > to > > > > > events with keycodes > > > > > greater than 255 is? I've had a look at > some of > > > the > > > > > patches, but they > > > > > dont do anything that the other (old) > keyboard > > > > > interface does. > > > > > > > > > > I would really like the channel up/down > buttons > > > to > > > > > work with X, so if > > > > > any one would like to give me a nudge in the > > > right > > > > > direction, or refer > > > > > me to the appropriate authorities, I'd > > > appreciate > > > > > it. > > > > > > > > > > > > > What version? > > > > > > > > > > XOrg? 6.8.2. > > > > No, Ruby. My experience is that different versions > of > > Ruby handle keycodes differently. E.g Did you try > this > > on 2.6.9 or 2.6.10? > > Ah, my current kernel version is 2.6.12.2, but its > been a problem for as > long as I can remember (2.6.9ish). I have never > actually used the > source in ruby (out of CVS); just a stable kernel > release. > I don't use keycodes > 255, but keycodes in general in my experience are OK up to and including Ruby 2.6.10 and give back garbage in Ruby beyond that. I posted this on this list. Regards, Hugo ____________________________________________________ Sell on Yahoo! Auctions no fees. Bid on great items. http://auctions.yahoo.com/ |
From: Mark H. <mar...@xs...> - 2005-07-08 12:17:49
|
Hi Sean, I've been strugling along that path, but have had little time to work on it recently, so I don't have any progress to report. I did manage to get one step beyond where you are now, meaning, I got a version of X patched to work without a VT. (recent debian based distro's seem to include the patch by default, I've moved to using Ubuntu Hoary, which uses xorg 6.8.2-10 and has said patch included). Next problem I ran into was some IO access problem. I have not had the chance to investigate that further, but I got a hint from Ian about patching Xen to allow this IO (not sure how safe that is though). I was also thinking that, since X does not really have a need for the IO access, perhaps X could be patched (was planning to try with fbdev driver, since that should not have any need for other IO). See this post: http://article.gmane.org/gmane.comp.emulators.xen.devel/3013/match=hurenkamp I don't know when I will have more time to investigate, it can be a very time consuming issue to track, since it probably involves several rebuilds of Xorg and/or Xen. Anyways, I wish you good luck, and am very interested if you have something of interest to report :-). When I have some more info, I'll also report back here. Mark. > Hi, > > I posted a query about my problems running X servers from user domains > in Xen back in April: > > http://lists.xensource.com/archives/html/xen-devel/2005-04/msg00651.html > > As I recall X was being actively developed at that time to remove its > unnecessary assumptions about having direct PCI access which was thought > to be the key to progress, with patches apparently available. Does > anybody know the current status or have any further experience of this > please? > > Cheers, > > Sean. |
From: Ken M. <ke...@th...> - 2005-07-07 19:56:24
|
Mark Hurenkamp wrote: >>I'm using the pre-experimental Debian packages based on the original >>Ubuntu packages. The /etc/apt/sources.list line for them is: >> >>deb http://people.debian.org/~dnusinow/xorg ./ >> >>With a 2.6.8 kernel, here's a snippet from my xorg.conf file. >> >> >>Section "InputDevice" >> Identifier "Keyboard" >> Driver "kbd" >> >> >^^^ Here's what solved my problem. >I had a line 'Driver "keyboard"' here, which apparently does not work >with evdev. >I replaced it with the line above, and now things work perfectly. > > > >> Option "Protocol" "evdev" >> Option "Dev Phys" "usb-*.0-1.1/input0" >> # Option "Dev Name" "NMB Dell USB 7HK Keyboard" >> Option "XkbRules" "xfree86" >> Option "XkbModel" "pc104" >> Option "XkbLayout" "us" >>EndSection >> >> > > >Thanks for the help! > >Mark. > > > No problem, glad to help. Ken |
From: Mark H. <mar...@xs...> - 2005-07-07 19:07:36
|
> I'm using the pre-experimental Debian packages based on the original > Ubuntu packages. The /etc/apt/sources.list line for them is: > > deb http://people.debian.org/~dnusinow/xorg ./ > > With a 2.6.8 kernel, here's a snippet from my xorg.conf file. > > > Section "InputDevice" > Identifier "Keyboard" > Driver "kbd" ^^^ Here's what solved my problem. I had a line 'Driver "keyboard"' here, which apparently does not work with evdev. I replaced it with the line above, and now things work perfectly. > Option "Protocol" "evdev" > Option "Dev Phys" "usb-*.0-1.1/input0" > # Option "Dev Name" "NMB Dell USB 7HK Keyboard" > Option "XkbRules" "xfree86" > Option "XkbModel" "pc104" > Option "XkbLayout" "us" > EndSection Thanks for the help! Mark. |
From: Micah F. G. <mfg...@uw...> - 2005-07-07 15:38:58
|
On Thu, 2005-07-07 at 08:23 -0700, Hugo Vanwoerkom wrote: >=20 > --- "Micah F. Galizia" <mfg...@uw...> wrote: >=20 > > On Thu, 2005-07-07 at 04:52 -0700, Hugo Vanwoerkom > > wrote: > > > --- "Micah F. Galizia" <mfg...@uw...> wrote: > > >=20 > > > > Hello again, > > > >=20 > > > > Does anyone know what the status of X is WRT to > > > > events with keycodes > > > > greater than 255 is? I've had a look at some of > > the > > > > patches, but they > > > > dont do anything that the other (old) keyboard > > > > interface does. > > > >=20 > > > > I would really like the channel up/down buttons > > to > > > > work with X, so if > > > > any one would like to give me a nudge in the > > right > > > > direction, or refer > > > > me to the appropriate authorities, I'd > > appreciate > > > > it. > > > >=20 > > >=20 > > > What version? > > >=20 > >=20 > > XOrg? 6.8.2. >=20 > No, Ruby. My experience is that different versions of > Ruby handle keycodes differently. E.g Did you try this > on 2.6.9 or 2.6.10? Ah, my current kernel version is 2.6.12.2, but its been a problem for as long as I can remember (2.6.9ish). I have never actually used the source in ruby (out of CVS); just a stable kernel release. --=20 Micah Galizia mfg...@uw... "The mark of an immature man is that he wants to die nobly for a cause, while the mark of the mature man is that he wants to live humbly for one." --W. Stekel |
From: Hugo V. <hvw...@ya...> - 2005-07-07 15:23:32
|
--- "Micah F. Galizia" <mfg...@uw...> wrote: > On Thu, 2005-07-07 at 04:52 -0700, Hugo Vanwoerkom > wrote: > > --- "Micah F. Galizia" <mfg...@uw...> wrote: > > > > > Hello again, > > > > > > Does anyone know what the status of X is WRT to > > > events with keycodes > > > greater than 255 is? I've had a look at some of > the > > > patches, but they > > > dont do anything that the other (old) keyboard > > > interface does. > > > > > > I would really like the channel up/down buttons > to > > > work with X, so if > > > any one would like to give me a nudge in the > right > > > direction, or refer > > > me to the appropriate authorities, I'd > appreciate > > > it. > > > > > > > What version? > > > > XOrg? 6.8.2. No, Ruby. My experience is that different versions of Ruby handle keycodes differently. E.g Did you try this on 2.6.9 or 2.6.10? ____________________________________________________ Sell on Yahoo! Auctions no fees. Bid on great items. http://auctions.yahoo.com/ |
From: Micah F. G. <mfg...@uw...> - 2005-07-07 12:01:49
|
On Thu, 2005-07-07 at 04:52 -0700, Hugo Vanwoerkom wrote: > --- "Micah F. Galizia" <mfg...@uw...> wrote: >=20 > > Hello again, > >=20 > > Does anyone know what the status of X is WRT to > > events with keycodes > > greater than 255 is? I've had a look at some of the > > patches, but they > > dont do anything that the other (old) keyboard > > interface does. > >=20 > > I would really like the channel up/down buttons to > > work with X, so if > > any one would like to give me a nudge in the right > > direction, or refer > > me to the appropriate authorities, I'd appreciate > > it. > >=20 >=20 > What version? >=20 XOrg? 6.8.2. --=20 Micah F. Galizia mfg...@uw... "The mark of an immature man is that he wants to die nobly for a cause, while the mark of the mature man is that he wants to live humbly for one." --W. Stekel |
From: Hugo V. <hvw...@ya...> - 2005-07-07 11:52:52
|
--- "Micah F. Galizia" <mfg...@uw...> wrote: > Hello again, > > Does anyone know what the status of X is WRT to > events with keycodes > greater than 255 is? I've had a look at some of the > patches, but they > dont do anything that the other (old) keyboard > interface does. > > I would really like the channel up/down buttons to > work with X, so if > any one would like to give me a nudge in the right > direction, or refer > me to the appropriate authorities, I'd appreciate > it. > What version? __________________________________ Yahoo! Mail for Mobile Take Yahoo! Mail with you! Check email on your mobile phone. http://mobile.yahoo.com/learn/mail |
From: Ken M. <ke...@th...> - 2005-07-07 01:02:35
|
On Mon, 2005-07-04 at 23:32 +0200, Mark Hurenkamp wrote: > >> I can't seem to get the keyboard to work in the same way: > >> > >> Section "InputDevice" > >> Identifier "Generic Keyboard" > >> Driver "keyboard" > >> Option "Protocol" "evdev" > >> Option "Dev Phys" > >> "usb-0000:03:00.0-2.1/input1" > >> Option "CoreKeyboard" > >> Option "XkbRules" "xorg" > >> Option "XkbModel" "pc104" > >> Option "XkbLayout" "us" > >> EndSection > >> > > > > acording to my experiance > > keyboards are always @ ..../input0 > > where as the multimedia keys reside @ ..../input1 > > what does contain your /prc/bus/input/devices ? > > Sorry, copied the wrong part. The section actually uses > input0. Here's the correct one: > > Section "InputDevice" > Identifier "Right Keyboard" > Driver "keyboard" > Option "Protocol" "evdev" > Option "Dev Phys" "usb-0000:03:00.0-1.1/input0" > Option "CoreKeyboard" > Option "XkbRules" "xorg" > Option "XkbModel" "pc104" > Option "XkbLayout" "us" > EndSection > > Tried again today, just to make sure I have it right, but > no luck :-( > X seems to be unfamiliar with the evdev protocol for keyboards... > > (++) ServerLayout "Right" > (**) |-->Screen "Right Screen" (0) > (**) | |-->Monitor "PHILIPS 107T" > (**) | |-->Device "Matrox Graphics, Inc. MGA G550 AGP" > (**) |-->Input Device "Right Keyboard" > (**) Option "Protocol" "evdev" > > Config Error: > "evdev" is not a valid keyboard protocol name > (EE) Unable to determine the screen layout > (EE) Error parsing the config file > > So it seems to me that the '055_lnx_evdev_keyboard.diff' patch is > missing here... > > Will see if I can find the sources for ubuntu xorg, so I can take a look > there. > > > Mark. > I'm using the pre-experimental Debian packages based on the original Ubuntu packages. The /etc/apt/sources.list line for them is: deb http://people.debian.org/~dnusinow/xorg ./ With a 2.6.8 kernel, here's a snippet from my xorg.conf file. Section "InputDevice" Identifier "Keyboard" Driver "kbd" Option "Protocol" "evdev" Option "Dev Phys" "usb-*.0-1.1/input0" # Option "Dev Name" "NMB Dell USB 7HK Keyboard" Option "XkbRules" "xfree86" Option "XkbModel" "pc104" Option "XkbLayout" "us" EndSection Section "InputDevice" Identifier "Mouse" Driver "mouse" Option "Protocol" "evdev" Option "Dev Phys" "usb-*.0-1.2/input0" # Option "Dev Name" "Microsoft Microsoft 3-Button Mouse with IntelliEye(TM)" EndSection Note that the keyboards I'm using have a two port USB hub built in. HTH, Ken |
From: Micah F. G. <mfg...@uw...> - 2005-07-06 23:53:28
|
Hello again, Does anyone know what the status of X is WRT to events with keycodes greater than 255 is? I've had a look at some of the patches, but they dont do anything that the other (old) keyboard interface does. I would really like the channel up/down buttons to work with X, so if any one would like to give me a nudge in the right direction, or refer me to the appropriate authorities, I'd appreciate it. Thanks --=20 Micah F. Galizia mfg...@uw... "The mark of an immature man is that he wants to die nobly for a cause, while the mark of the mature man is that he wants to live humbly for one." --W. Stekel |
From: Vojtech P. <vo...@su...> - 2005-07-06 19:39:19
|
On Wed, Jul 06, 2005 at 03:20:12PM -0400, Micah F. Galizia wrote: > Hello all, > > Hopefully there are no other issues with this patch, but again, let me > know if there are. Can you add a comment and a Signed-off-by: line? > > Thanks again! > -- > Micah F. Galizia > mfg...@uw... > > "The mark of an immature man is that he wants to die > nobly for a cause, while the mark of the mature man is > that he wants to live humbly for one." --W. Stekel > --- gitandhidpatches/drivers/usb/input/hid-input.c 2005-07-05 18:29:32.726219000 -0400 > +++ micah/drivers/usb/input/hid-input.c 2005-07-06 15:17:30.557711250 -0400 > @@ -237,6 +237,7 @@ > case 0x000: goto ignore; > case 0x034: map_key_clear(KEY_SLEEP); break; > case 0x036: map_key_clear(BTN_MISC); break; > + case 0x045: map_key_clear(KEY_RADIO); break; > case 0x08a: map_key_clear(KEY_WWW); break; > case 0x08d: map_key_clear(KEY_PROGRAM); break; > case 0x095: map_key_clear(KEY_HELP); break; > @@ -308,9 +309,32 @@ > > case HID_UP_MSVENDOR: > case HID_UP_LOGIVENDOR: > + > + goto ignore; > + > case HID_UP_LOGIVENDOR2: > > - goto ignore; > + switch(usage->hid & HID_USAGE) { > + case 0x004: map_key_clear(KEY_AGAIN); break; > + case 0x00d: map_key_clear(KEY_HOME); break; > + case 0x024: map_key_clear(KEY_SHUFFLE); break; > + case 0x025: map_key_clear(KEY_TV); break; > + case 0x026: map_key_clear(KEY_MENU); break; > + case 0x031: map_key_clear(KEY_AUDIO); break; > + case 0x032: map_key_clear(KEY_SUBTITLE); break; > + case 0x033: map_key_clear(KEY_LAST); break; > + case 0x047: map_key_clear(KEY_MP3); break; > + case 0x048: map_key_clear(KEY_DVD); break; > + case 0x049: map_key_clear(KEY_MEDIA); break; > + case 0x04a: map_key_clear(KEY_VIDEO); break; > + case 0x04b: map_key_clear(KEY_ANGLE); break; > + case 0x04c: map_key_clear(KEY_LANGUAGE); break; > + case 0x04d: map_key_clear(KEY_SUBTITLE); break; > + case 0x051: map_key_clear(KEY_RED); break; > + case 0x052: map_key_clear(KEY_CLOSE); break; > + default: goto ignore; > + } > + break; > > case HID_UP_PID: > -- Vojtech Pavlik SuSE Labs, SuSE CR |
From: Micah F. G. <mfg...@uw...> - 2005-07-06 19:20:28
|
Hello all, Hopefully there are no other issues with this patch, but again, let me know if there are. Thanks again! -- Micah F. Galizia mfg...@uw... "The mark of an immature man is that he wants to die nobly for a cause, while the mark of the mature man is that he wants to live humbly for one." --W. Stekel |
From: Vojtech P. <vo...@su...> - 2005-07-06 18:57:20
|
On Wed, Jul 06, 2005 at 10:49:47AM -0400, Micah F. Galizia wrote: > On Wed, 2005-06-07 at 15:55 +0200, Vojtech Pavlik wrote: > [snip] > > > > > > I used my best judgement when assigning keys, since the text on the > > > device does not always match up with a key defined in input.h. Here is > > > a list of the potentially ambiguous or incorrect mappings: > > > > > > Start->KEY_RED > > > Pictures->KEY_MEDIA > > > DVD Menu->KEY_MENU > > > SAP->KEY_AUDIO > > > Repeat->KEY_AGAIN > > > CC/Teletext->KEY_SUBTITLE > > > Music->KEY_MP3 > > > > The problem is that the markings on the device aren't important in case > > of the Consumer HID usage page. We need to follow the spec > > (http://www.usb.org/developers/devclass_docs/Hut1_11.pdf). > > > > > Allow me to justify the silly ones. The start key is big and red, > > > Google told me SAP stands for "Secondary Audio Program", and there is no > > > key close to pictures/graphics/image. > > > > We can add KEY_* definitions, if they are likely to be used on other > > devices, too. > > Well, I am satisfied with these mappings. They make sense (to me) for > this device. If you feel like adding keys for some of those buttons, > I'll change it to use them. > > > > > > The patch failed on account of HID_UP_LOGIVENDOR not being defined. I > > > fixed two hunks manually, so it should work fine with your tree, > > > Vojtech. > > > > Sorry for that, it's defined in an earlier patch I didn't send to you. > > > > > Thanks again for all your help. Please keep me posted if something is > > > wrong. > > > > > --- gitandhidpatches/drivers/usb/input/hid-input.c 2005-07-05 18:29:32.726219000 -0400 > > > +++ micah/drivers/usb/input/hid-input.c 2005-07-05 18:42:15.489888750 -0400 > > > @@ -237,6 +237,7 @@ > > > case 0x000: goto ignore; > > > case 0x034: map_key_clear(KEY_SLEEP); break; > > > case 0x036: map_key_clear(BTN_MISC); break; > > > + case 0x045: map_key_clear(KEY_RADIO); break; > > > > This is rather suspicious, considering what Consumer.0045 is supposed to > > mean. I can add it, but I expect it'll be incorrect for other devices. > > I am the appropriate authority to make this decision. Now that I look > at the spec, I see your point. Its up to you, but in hindsight, I don't > see much point in breaking the specifications. If you add a > KEY_MENU_RIGHT, I'll change it, if not, I wont. > > > > - case 0x209: map_key_clear(KEY_PROPS); break; > > > + case 0x209: map_key_clear(KEY_INFO); break; > > > > See the spec on this one. > > Yup, my bad. > > Let me know what you want to do with ID 45 on the consumer page (and the > other buttons), and I'll resubmit. Keep the KEY_RADIO. It hasn't been mapped at all up to now, and I'll change it if it's ever used on another device and somebody complains. -- Vojtech Pavlik SuSE Labs, SuSE CR |
From: Micah F. G. <mfg...@uw...> - 2005-07-06 14:47:53
|
On Wed, 2005-06-07 at 15:55 +0200, Vojtech Pavlik wrote: [snip] > >=20 > > I used my best judgement when assigning keys, since the text on the > > device does not always match up with a key defined in input.h. Here is > > a list of the potentially ambiguous or incorrect mappings: > >=20 > > Start->KEY_RED > > Pictures->KEY_MEDIA > > DVD Menu->KEY_MENU > > SAP->KEY_AUDIO > > Repeat->KEY_AGAIN > > CC/Teletext->KEY_SUBTITLE > > Music->KEY_MP3 >=20 > The problem is that the markings on the device aren't important in case > of the Consumer HID usage page. We need to follow the spec > (http://www.usb.org/developers/devclass_docs/Hut1_11.pdf). >=20 > > Allow me to justify the silly ones. The start key is big and red, > > Google told me SAP stands for "Secondary Audio Program", and there is n= o > > key close to pictures/graphics/image. >=20 > We can add KEY_* definitions, if they are likely to be used on other > devices, too. Well, I am satisfied with these mappings. They make sense (to me) for this device. If you feel like adding keys for some of those buttons, I'll change it to use them. >=20 > > The patch failed on account of HID_UP_LOGIVENDOR not being defined. I > > fixed two hunks manually, so it should work fine with your tree, > > Vojtech. >=20 > Sorry for that, it's defined in an earlier patch I didn't send to you. >=20 > > Thanks again for all your help. Please keep me posted if something is > > wrong. >=20 > > --- gitandhidpatches/drivers/usb/input/hid-input.c 2005-07-05 18:29:32.= 726219000 -0400 > > +++ micah/drivers/usb/input/hid-input.c 2005-07-05 18:42:15.489888750 -= 0400 > > @@ -237,6 +237,7 @@ > > case 0x000: goto ignore; > > case 0x034: map_key_clear(KEY_SLEEP); break; > > case 0x036: map_key_clear(BTN_MISC); break; > > + case 0x045: map_key_clear(KEY_RADIO); break; >=20 > This is rather suspicious, considering what Consumer.0045 is supposed to > mean. I can add it, but I expect it'll be incorrect for other devices. I am the appropriate authority to make this decision. Now that I look at the spec, I see your point. Its up to you, but in hindsight, I don't see much point in breaking the specifications. If you add a KEY_MENU_RIGHT, I'll change it, if not, I wont. > > - case 0x209: map_key_clear(KEY_PROPS); break; > > + case 0x209: map_key_clear(KEY_INFO); break; >=20 > See the spec on this one. Yup, my bad. Let me know what you want to do with ID 45 on the consumer page (and the other buttons), and I'll resubmit. --=20 Micah Galizia mfg...@uw... "The mark of an immature man is that he wants to die nobly for a cause, while the mark of the mature man is that he wants to live humbly for one." --W. Stekel |
From: Vojtech P. <vo...@su...> - 2005-07-06 13:55:41
|
On Tue, Jul 05, 2005 at 06:59:36PM -0400, Micah F. Galizia wrote: > Hello, > > I've attached the patch that makes all keys on the Logitech UltraX Media > Remote work nicely. I will verify that the previous patch correctly > assigns the channel keys in the consumer page, however, I cannot give > props to the mapping of props (sorry). 0x209 on this remote says > "Info/EPG", but it has been assigned to KEY_PROPS. Maybe I'm just not > understanding the meaning of "props." This patch does reassign KEY_INFO > to 0x209 in the consumer page; it that was the wrong thing to do, I'll > resubmit. > > I used my best judgement when assigning keys, since the text on the > device does not always match up with a key defined in input.h. Here is > a list of the potentially ambiguous or incorrect mappings: > > Start->KEY_RED > Pictures->KEY_MEDIA > DVD Menu->KEY_MENU > SAP->KEY_AUDIO > Repeat->KEY_AGAIN > CC/Teletext->KEY_SUBTITLE > Music->KEY_MP3 The problem is that the markings on the device aren't important in case of the Consumer HID usage page. We need to follow the spec (http://www.usb.org/developers/devclass_docs/Hut1_11.pdf). > Allow me to justify the silly ones. The start key is big and red, > Google told me SAP stands for "Secondary Audio Program", and there is no > key close to pictures/graphics/image. We can add KEY_* definitions, if they are likely to be used on other devices, too. > The patch failed on account of HID_UP_LOGIVENDOR not being defined. I > fixed two hunks manually, so it should work fine with your tree, > Vojtech. Sorry for that, it's defined in an earlier patch I didn't send to you. > Thanks again for all your help. Please keep me posted if something is > wrong. > --- gitandhidpatches/drivers/usb/input/hid-input.c 2005-07-05 18:29:32.726219000 -0400 > +++ micah/drivers/usb/input/hid-input.c 2005-07-05 18:42:15.489888750 -0400 > @@ -237,6 +237,7 @@ > case 0x000: goto ignore; > case 0x034: map_key_clear(KEY_SLEEP); break; > case 0x036: map_key_clear(BTN_MISC); break; > + case 0x045: map_key_clear(KEY_RADIO); break; This is rather suspicious, considering what Consumer.0045 is supposed to mean. I can add it, but I expect it'll be incorrect for other devices. > case 0x08a: map_key_clear(KEY_WWW); break; > case 0x08d: map_key_clear(KEY_PROGRAM); break; > case 0x095: map_key_clear(KEY_HELP); break; > @@ -265,7 +266,7 @@ > case 0x201: map_key_clear(KEY_NEW); break; > case 0x207: map_key_clear(KEY_SAVE); break; > case 0x208: map_key_clear(KEY_PRINT); break; > - case 0x209: map_key_clear(KEY_PROPS); break; > + case 0x209: map_key_clear(KEY_INFO); break; See the spec on this one. > case 0x21a: map_key_clear(KEY_UNDO); break; > case 0x21b: map_key_clear(KEY_COPY); break; > case 0x21c: map_key_clear(KEY_CUT); break; > @@ -309,9 +310,27 @@ > case HID_UP_MSVENDOR: > case HID_UP_LOGIVENDOR: > case HID_UP_LOGIVENDOR2: > - > - goto ignore; > - > + switch(usage->hid & HID_USAGE) { > + case 0x004: map_key_clear(KEY_AGAIN); break; > + case 0x00d: map_key_clear(KEY_HOME); break; > + case 0x024: map_key_clear(KEY_SHUFFLE); break; > + case 0x025: map_key_clear(KEY_TV); break; > + case 0x026: map_key_clear(KEY_MENU); break; > + case 0x031: map_key_clear(KEY_AUDIO); break; > + case 0x032: map_key_clear(KEY_SUBTITLE); break; > + case 0x033: map_key_clear(KEY_LAST); break; > + case 0x047: map_key_clear(KEY_MP3); break; > + case 0x048: map_key_clear(KEY_DVD); break; > + case 0x049: map_key_clear(KEY_MEDIA); break; > + case 0x04a: map_key_clear(KEY_VIDEO); break; > + case 0x04b: map_key_clear(KEY_ANGLE); break; > + case 0x04c: map_key_clear(KEY_LANGUAGE); break; > + case 0x04d: map_key_clear(KEY_SUBTITLE); break; > + case 0x051: map_key_clear(KEY_RED); break; > + case 0x052: map_key_clear(KEY_CLOSE); break; > + default: goto ignore; > + } > + break; You need to separate the LOGIVENDOR2 case, the switch() isn't valid for LOGIVENDOR and MSVENDOR. -- Vojtech Pavlik SuSE Labs, SuSE CR |
From: Dmitry T. <dto...@am...> - 2005-07-06 13:46:43
|
"Micah F. Galizia" <mfg...@uw...> wrote: > @@ -309,9 +310,27 @@ > case HID_UP_MSVENDOR: > case HID_UP_LOGIVENDOR: > case HID_UP_LOGIVENDOR2: > - > - goto ignore; > - > + switch(usage->hid & HID_USAGE) { > + case 0x004: map_key_clear(KEY_AGAIN); Are you sure that MSVENDOR also uses the same mappings? I'd think these are exclusively Logitech's (LOGIVENDOR2). -- Dmitry |
From: Micah F. G. <mfg...@uw...> - 2005-07-05 22:59:49
|
Hello, I've attached the patch that makes all keys on the Logitech UltraX Media Remote work nicely. I will verify that the previous patch correctly assigns the channel keys in the consumer page, however, I cannot give props to the mapping of props (sorry). 0x209 on this remote says "Info/EPG", but it has been assigned to KEY_PROPS. Maybe I'm just not understanding the meaning of "props." This patch does reassign KEY_INFO to 0x209 in the consumer page; it that was the wrong thing to do, I'll resubmit. I used my best judgement when assigning keys, since the text on the device does not always match up with a key defined in input.h. Here is a list of the potentially ambiguous or incorrect mappings: Start->KEY_RED Pictures->KEY_MEDIA DVD Menu->KEY_MENU SAP->KEY_AUDIO Repeat->KEY_AGAIN CC/Teletext->KEY_SUBTITLE Music->KEY_MP3 Allow me to justify the silly ones. The start key is big and red, Google told me SAP stands for "Secondary Audio Program", and there is no key close to pictures/graphics/image. On Tue, 2005-05-07 at 11:04 +0200, Vojtech Pavlik wrote: [really big snip] > > Please try with this patch: > [another snip] The patch failed on account of HID_UP_LOGIVENDOR not being defined. I fixed two hunks manually, so it should work fine with your tree, Vojtech. Thanks again for all your help. Please keep me posted if something is wrong. -- Micah F. Galizia mfg...@uw... "The mark of an immature man is that he wants to die nobly for a cause, while the mark of the mature man is that he wants to live humbly for one." --W. Stekel |
From: Vojtech P. <vo...@su...> - 2005-07-05 09:04:44
|
On Mon, Jul 04, 2005 at 04:08:09PM -0400, Micah F. Galizia wrote: > On Mon, 2005-04-07 at 13:01 +0200, Vojtech Pavlik wrote: > > The assignment of HID usages to Linux input events is done in the > > hid-input.c file. Change the #undef DEBUG in there to a #define DEBUG, > > and take a look at (or send me) the resulting 'dmesg' output. There > > you'll see which HID usages it didn't understand and how it assigned the > > others. > > Hello again. > > The output is at the bottom of the message. The offending device is > listed as the "Logitech USB Receiver." > > Another thing I just noticed is that the first physical device, which is > standard keys (numbers, letters, etc), is claiming to have keys and > buttons that it does not (or evtest is anyways). > > In any case, I'm game to fix this, so I guess I'm looking for > recommendations on where to go from here. Oh, and sorry for all of the > extra junk included in the dmesg output: > > Mapping: Keyboard.008c ---> Key.KPJpComma > Mapping: Keyboard.008d ---> Key.Unknown > Mapping: Keyboard.008e ---> Key.Unknown > Mapping: Keyboard.008f ---> Key.Unknown > Mapping: Keyboard.0090 ---> Key.Hanguel > Mapping: Keyboard.0091 ---> Key.Hanja > Mapping: Keyboard.0092 ---> Key.Katakana > Mapping: Keyboard.0093 ---> Key.HIRAGANA > Mapping: Keyboard.0094 ---> Key.Zenkaku/Hankaku > Mapping: Keyboard.0095 ---> Key.Unknown > Mapping: Keyboard.0096 ---> Key.Unknown > Mapping: Keyboard.0097 ---> Key.Unknown > Mapping: Keyboard.0098 ---> Key.Unknown > Mapping: LED.NumLock ---> LED.NumLock > Mapping: LED.CapsLock ---> LED.CapsLock > Mapping: LED.ScrollLock ---> LED.ScrollLock > input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:10.3-2 The above seems to be a truncated output from the keyboard part of the USB receiver. Apart from claiming to have keys that it doesn't, which is rather common, I don't see any problems there. > Mapping: Consumer.00b5 ---> Key.NextSong > Mapping: Consumer.00b6 ---> Key.PreviousSong > Mapping: Consumer.0045 ---> Key.Btn0 > Mapping: Consumer.00cd ---> Key.PlayPause > Mapping: Consumer.00e2 ---> Key.Mute > Mapping: Consumer.00e9 ---> Key.VolumeUp > Mapping: Consumer.00ea ---> Key.VolumeDown > Mapping: Consumer.00b2 ---> Key.Record > Mapping: Consumer.009c ---> Key.Btn1 > Mapping: Consumer.009d ---> Key.Btn2 > Mapping: Consumer.0224 ---> Key.Back > Mapping: Consumer.0225 ---> Key.Forward > Mapping: Consumer.00b7 ---> Key.StopCD > Mapping: Consumer.0227 ---> Key.Refresh > Mapping: Consumer.022a ---> Key.Bookmarks > Mapping: Consumer.0192 ---> Key.Calc > Mapping: Consumer.0194 ---> Key.File > Mapping: Consumer.0209 ---> Key.Btn3 > Mapping: Consumer.00b4 ---> Key.Rewind > Mapping: Consumer.00b3 ---> Key.Fast Forward > Mapping: Consumer.0223 ---> Key.HomePage > Mapping: Consumer.008d ---> Key.Btn4 > Mapping: Consumer.00b0 ---> Key.Play > Mapping: Consumer.00b1 ---> Key.Pause > Mapping: ffbc.000d ---> Key.Btn5 > Mapping: ffbc.0025 ---> Key.Btn6 > Mapping: ffbc.0024 ---> Key.Btn7 > Mapping: ffbc.0047 ---> Key.Btn8 > Mapping: ffbc.0049 ---> Key.Btn9 > Mapping: ffbc.004a ---> Key.? > Mapping: ffbc.0046 ---> Key.? > Mapping: ffbc.0048 ---> Key.? > Mapping: ffbc.004b ---> Key.? > Mapping: ffbc.004c ---> Key.? > Mapping: ffbc.0026 ---> Key.? > Mapping: ffbc.004d ---> Key.LeftBtn > Mapping: ffbc.0031 ---> Key.RightBtn > Mapping: ffbc.0032 ---> Key.MiddleBtn > Mapping: ffbc.0033 ---> Key.SideBtn > Mapping: ffbc.0004 ---> Key.ExtraBtn > Mapping: ffbc.0051 ---> Key.ForwardBtn > Mapping: ffbc.0052 ---> Key.BackBtn > input,hiddev96: USB HID v1.10 Device [Logitech USB Receiver] on usb-0000:00:10.3-2 Here we have the multimedia part of the thingy, most likely some kind of a remote. And this is where the hid-input module gets quite confused. First by usages from the Consumer page it doesn't understand (0045, 009c, 009d, 0209, 008d). Second, by Logitech vendor usages (ffbc.*). This will be a bit harder, and will need your cooperation. Please enable DEBUG in hid-core.c, too, and check what usages from the ffbc page appear in your syslog/dmesg when you press keys on the device. Let's take a look in the specs (USB HID HUT 1.11): 0045: MenuRight 009c: NextChannel 009d: PrevChannel 0209: ApplicationControlProperties 008d: MediaSelectProgramGuide I guess I'll need your help again to find out what these keys are supposed to do and how they're marked on the device. > usb 1-1: new low speed USB device using uhci_hcd and address 4 > Mapping: Button.0001 ---> Key.LeftBtn > Mapping: Button.0002 ---> Key.RightBtn > Mapping: Button.0003 ---> Key.MiddleBtn > Mapping: Button.0004 ---> Key.SideBtn > Mapping: Button.0005 ---> Key.ExtraBtn > Mapping: Button.0006 ---> Key.ForwardBtn > Mapping: Button.0007 ---> Key.BackBtn > Mapping: Button.0008 ---> Key.TaskBtn > Mapping: GenericDesktop.X ---> Relative.X > Mapping: GenericDesktop.Y ---> Relative.Y > Mapping: GenericDesktop.Wheel ---> Relative.Wheel > Mapping: LED.004b ---> IGNORED > Mapping: LED.004b ---> IGNORED > Mapping: LED.004b ---> IGNORED > Mapping: LED.004b ---> IGNORED > Mapping: LED.004b ---> IGNORED > Mapping: LED.004b ---> IGNORED > Mapping: LED.004b ---> IGNORED > Mapping: LED.004b ---> IGNORED > input: USB HID v1.10 Mouse [Logitech USB-PS/2 Optical Mouse] on usb-0000:00:10.0-1 Apart from claiming to have several LEDs of the same type ("Generic Indicator"), which the hid-input mapper correctly ignores, the mouse is pretty normal. > usb 1-2: new low speed USB device using uhci_hcd and address 5 > Mapping: Keyboard.00e0 ---> Key.LeftControl > Mapping: Keyboard.00e1 ---> Key.LeftShift > Mapping: Keyboard.00e6 ---> Key.RightAlt > Mapping: Keyboard.00e7 ---> Key.RightMeta > Mapping: Keyboard.0000 ---> IGNORED > Mapping: Keyboard.0001 ---> IGNORED > Mapping: Keyboard.0002 ---> IGNORED > Mapping: Keyboard.0003 ---> IGNORED > Mapping: Keyboard.0004 ---> Key.A > Mapping: Keyboard.0005 ---> Key.B > Mapping: Keyboard.006c ---> Key.F17 > Mapping: Keyboard.0071 ---> Key.F22 > Mapping: Keyboard.0072 ---> Key.F23 > Mapping: Keyboard.0073 ---> Key.F24 > Mapping: Keyboard.0074 ---> Key.Open > Mapping: Keyboard.0075 ---> Key.Help > Mapping: Keyboard.0076 ---> Key.Props > Mapping: Keyboard.009d ---> Key.Unknown > Mapping: Keyboard.00a2 ---> Key.Unknown > Mapping: Keyboard.00a3 ---> Key.Unknown > Mapping: Keyboard.00a4 ---> Key.Unknown > Mapping: LED.NumLock ---> LED.NumLock > Mapping: LED.CapsLock ---> LED.CapsLock > Mapping: LED.ScrollLock ---> LED.ScrollLock > Mapping: LED.Compose ---> LED.Compose > Mapping: LED.Kana ---> LED.Kana > input: USB HID v1.10 Keyboard [Logitech Logitech USB Keyboard] on usb-0000:00:10.0-2 And here comes a keyboard, claiming LEDs it likely doesn't have, and a bunch of extra keys, too, but nothing too bad. > Mapping: Consumer.0225 ---> Key.Forward > Mapping: Consumer.00b6 ---> Key.PreviousSong > Mapping: Consumer.00b5 ---> Key.NextSong > Mapping: Consumer.00b7 ---> Key.StopCD > Mapping: Consumer.00cd ---> Key.PlayPause > Mapping: Consumer.00ea ---> Key.VolumeDown > Mapping: Consumer.00e9 ---> Key.VolumeUp > Mapping: Consumer.00e2 ---> Key.Mute > Mapping: Consumer.0192 ---> Key.Calc > Mapping: Consumer.018a ---> Key.Mail > Mapping: Consumer.0221 ---> Key.Find > Mapping: Consumer.0223 ---> Key.HomePage > Mapping: Consumer.022a ---> Key.Bookmarks > Mapping: Consumer.0224 ---> Key.Back > Mapping: Consumer.0183 ---> Key.Config > Mapping: Button.0001 ---> Key.Btn0 [snip] > Mapping: Button.003f ---> Key.BtnThumbR > Mapping: Button.0040 ---> Key.? > Mapping: Consumer.0201 ---> Absolute.Misc > Mapping: Consumer.0289 ---> Absolute.? > Mapping: Consumer.028b ---> Absolute.? > Mapping: Consumer.028c ---> Absolute.? > Mapping: Consumer.021a ---> Key.Undo > Mapping: Consumer.0279 ---> Absolute.? > Mapping: Consumer.0208 ---> Absolute.? > Mapping: Consumer.0207 ---> Absolute.? > Mapping: Consumer.0194 ---> Key.File > Mapping: Consumer.01a7 ---> Absolute.? > Mapping: Consumer.01b6 ---> Absolute.? > Mapping: Consumer.01b7 ---> Absolute.? > Mapping: GenericDesktop.SystemSleep ---> Key.Sleep > Mapping: GenericDesktop.SystemPowerDown ---> Key.Power > Mapping: GenericDesktop.SystemWakeUp ---> Key.WakeUp > Mapping: GenericDesktop.Wheel ---> Relative.Wheel > Mapping: GenericDesktop.X ---> Relative.X > Mapping: GenericDesktop.Y ---> Relative.Y > input: USB HID v1.10 Mouse [Logitech Logitech USB Keyboard] on usb-0000:00:10.0-2 And the second part of the USB keyboard is pretty evil. It claims to be a mouse with 64 buttons, a host of consumer page keys and other controls. 0201: New 0289: Reply 028b: ForwardMsg 028c: Send 0279: Redo 0208: Print 0207: Save 0194: FileBrowser 01a7: Documents 01b6: RESERVED 01b7: RESERVED Please try with this patch: Index: dmitry/include/linux/input.h =================================================================== --- dmitry.orig/include/linux/input.h 2005-07-05 10:58:05.000000000 +0200 +++ dmitry/include/linux/input.h 2005-07-05 10:58:37.000000000 +0200 @@ -287,6 +287,8 @@ #define KEY_SCROLLDOWN 178 #define KEY_KPLEFTPAREN 179 #define KEY_KPRIGHTPAREN 180 +#define KEY_NEW 181 +#define KEY_REDO 182 #define KEY_F13 183 #define KEY_F14 184 @@ -333,6 +335,12 @@ #define KEY_KBDILLUMDOWN 229 #define KEY_KBDILLUMUP 230 +#define KEY_SEND 231 +#define KEY_REPLY 232 +#define KEY_FORWARDMAIL 233 +#define KEY_SAVE 234 +#define KEY_DOCUMENTS 235 + #define KEY_UNKNOWN 240 #define BTN_MISC 0x100 Index: dmitry/drivers/usb/input/hid-input.c =================================================================== --- dmitry.orig/drivers/usb/input/hid-input.c 2005-07-05 10:58:05.000000000 +0200 +++ dmitry/drivers/usb/input/hid-input.c 2005-07-05 11:02:25.000000000 +0200 @@ -77,8 +77,8 @@ { struct input_dev *input = &hidinput->input; struct hid_device *device = hidinput->input.private; - int max, code; - unsigned long *bit; + int max = 0, code; + unsigned long *bit = NULL; field->hidinput = hidinput; @@ -247,7 +247,10 @@ case 0x034: map_key_clear(KEY_SLEEP); break; case 0x036: map_key_clear(BTN_MISC); break; case 0x08a: map_key_clear(KEY_WWW); break; + case 0x08d: map_key_clear(KEY_PROGRAM); break; case 0x095: map_key_clear(KEY_HELP); break; + case 0x09c: map_key_clear(KEY_CHANNELUP); break; + case 0x09d: map_key_clear(KEY_CHANNELDOWN); break; case 0x0b0: map_key_clear(KEY_PLAY); break; case 0x0b1: map_key_clear(KEY_PAUSE); break; case 0x0b2: map_key_clear(KEY_RECORD); break; @@ -267,6 +270,11 @@ case 0x18a: map_key_clear(KEY_MAIL); break; case 0x192: map_key_clear(KEY_CALC); break; case 0x194: map_key_clear(KEY_FILE); break; + case 0x1a7: map_key_clear(KEY_DOCUMENTS); break; + case 0x201: map_key_clear(KEY_NEW); break; + case 0x207: map_key_clear(KEY_SAVE); break; + case 0x208: map_key_clear(KEY_PRINT); break; + case 0x209: map_key_clear(KEY_PROPS); break; case 0x21a: map_key_clear(KEY_UNDO); break; case 0x21b: map_key_clear(KEY_COPY); break; case 0x21c: map_key_clear(KEY_CUT); break; @@ -279,7 +287,11 @@ case 0x227: map_key_clear(KEY_REFRESH); break; case 0x22a: map_key_clear(KEY_BOOKMARKS); break; case 0x238: map_rel(REL_HWHEEL); break; - default: goto unknown; + case 0x279: map_key_clear(KEY_REDO); break; + case 0x289: map_key_clear(KEY_REPLY); break; + case 0x28b: map_key_clear(KEY_FORWARDMAIL); break; + case 0x28c: map_key_clear(KEY_SEND); break; + default: goto ignore; } break; @@ -305,6 +317,7 @@ case HID_UP_MSVENDOR: case HID_UP_LOGIVENDOR: + case HID_UP_LOGIVENDOR2: goto ignore; Index: dmitry/drivers/usb/input/hid-debug.h =================================================================== --- dmitry.orig/drivers/usb/input/hid-debug.h 2005-07-05 10:58:05.000000000 +0200 +++ dmitry/drivers/usb/input/hid-debug.h 2005-07-05 10:58:37.000000000 +0200 @@ -109,6 +109,7 @@ {0, 0x03, "ScrollLock"}, {0, 0x04, "Compose"}, {0, 0x05, "Kana"}, + {0, 0x4b, "GenericIndicator"}, { 9, 0, "Button" }, { 10, 0, "Ordinal" }, { 12, 0, "Consumer" }, @@ -591,7 +592,8 @@ [KEY_EXIT] = "Exit", [KEY_MOVE] = "Move", [KEY_EDIT] = "Edit", [KEY_SCROLLUP] = "ScrollUp", [KEY_SCROLLDOWN] = "ScrollDown", [KEY_KPLEFTPAREN] = "KPLeftParenthesis", - [KEY_KPRIGHTPAREN] = "KPRightParenthesis", [KEY_F13] = "F13", + [KEY_KPRIGHTPAREN] = "KPRightParenthesis", [KEY_NEW] = "New", + [KEY_REDO] = "Redo", [KEY_F13] = "F13", [KEY_F14] = "F14", [KEY_F15] = "F15", [KEY_F16] = "F16", [KEY_F17] = "F17", [KEY_F18] = "F18", [KEY_F19] = "F19", @@ -601,15 +603,15 @@ [KEY_PAUSECD] = "PauseCD", [KEY_PROG3] = "Prog3", [KEY_PROG4] = "Prog4", [KEY_SUSPEND] = "Suspend", [KEY_CLOSE] = "Close", [KEY_PLAY] = "Play", - [KEY_FASTFORWARD] = "Fast Forward", [KEY_BASSBOOST] = "Bass Boost", + [KEY_FASTFORWARD] = "FastForward", [KEY_BASSBOOST] = "BassBoost", [KEY_PRINT] = "Print", [KEY_HP] = "HP", [KEY_CAMERA] = "Camera", [KEY_SOUND] = "Sound", [KEY_QUESTION] = "Question", [KEY_EMAIL] = "Email", [KEY_CHAT] = "Chat", [KEY_SEARCH] = "Search", [KEY_CONNECT] = "Connect", [KEY_FINANCE] = "Finance", [KEY_SPORT] = "Sport", [KEY_SHOP] = "Shop", - [KEY_ALTERASE] = "Alternate Erase", [KEY_CANCEL] = "Cancel", - [KEY_BRIGHTNESSDOWN] = "Brightness down", [KEY_BRIGHTNESSUP] = "Brightness up", + [KEY_ALTERASE] = "AlternateErase", [KEY_CANCEL] = "Cancel", + [KEY_BRIGHTNESSDOWN] = "BrightnessDown", [KEY_BRIGHTNESSUP] = "BrightnessUp", [KEY_MEDIA] = "Media", [KEY_UNKNOWN] = "Unknown", [BTN_0] = "Btn0", [BTN_1] = "Btn1", [BTN_2] = "Btn2", [BTN_3] = "Btn3", @@ -639,8 +641,8 @@ [BTN_TOOL_AIRBRUSH] = "ToolAirbrush", [BTN_TOOL_FINGER] = "ToolFinger", [BTN_TOOL_MOUSE] = "ToolMouse", [BTN_TOOL_LENS] = "ToolLens", [BTN_TOUCH] = "Touch", [BTN_STYLUS] = "Stylus", - [BTN_STYLUS2] = "Stylus2", [BTN_TOOL_DOUBLETAP] = "Tool Doubletap", - [BTN_TOOL_TRIPLETAP] = "Tool Tripletap", [BTN_GEAR_DOWN] = "WheelBtn", + [BTN_STYLUS2] = "Stylus2", [BTN_TOOL_DOUBLETAP] = "ToolDoubleTap", + [BTN_TOOL_TRIPLETAP] = "ToolTripleTap", [BTN_GEAR_DOWN] = "WheelBtn", [BTN_GEAR_UP] = "Gear up", [KEY_OK] = "Ok", [KEY_SELECT] = "Select", [KEY_GOTO] = "Goto", [KEY_CLEAR] = "Clear", [KEY_POWER2] = "Power2", @@ -676,6 +678,9 @@ [KEY_TWEN] = "TWEN", [KEY_DEL_EOL] = "DeleteEOL", [KEY_DEL_EOS] = "DeleteEOS", [KEY_INS_LINE] = "InsertLine", [KEY_DEL_LINE] = "DeleteLine", + [KEY_SEND] = "Send", [KEY_REPLY] = "Reply", + [KEY_FORWARDMAIL] = "ForwardMail", [KEY_SAVE] = "Save", + [KEY_DOCUMENTS] = "Documents", }; static char *relatives[REL_MAX + 1] = { Index: dmitry/drivers/usb/input/hid.h =================================================================== --- dmitry.orig/drivers/usb/input/hid.h 2005-07-05 10:58:05.000000000 +0200 +++ dmitry/drivers/usb/input/hid.h 2005-07-05 10:58:37.000000000 +0200 @@ -184,6 +184,7 @@ #define HID_UP_HPVENDOR 0xff7f0000 #define HID_UP_MSVENDOR 0xff000000 #define HID_UP_LOGIVENDOR 0x00ff0000 +#define HID_UP_LOGIVENDOR2 0xffbc0000 #define HID_USAGE 0x0000ffff -- Vojtech Pavlik SuSE Labs, SuSE CR |
From: Mark H. <mar...@xs...> - 2005-07-04 21:32:43
|
>> I can't seem to get the keyboard to work in the same way: >> >> Section "InputDevice" >> Identifier "Generic Keyboard" >> Driver "keyboard" >> Option "Protocol" "evdev" >> Option "Dev Phys" >> "usb-0000:03:00.0-2.1/input1" >> Option "CoreKeyboard" >> Option "XkbRules" "xorg" >> Option "XkbModel" "pc104" >> Option "XkbLayout" "us" >> EndSection >> > > acording to my experiance > keyboards are always @ ..../input0 > where as the multimedia keys reside @ ..../input1 > what does contain your /prc/bus/input/devices ? Sorry, copied the wrong part. The section actually uses input0. Here's the correct one: Section "InputDevice" Identifier "Right Keyboard" Driver "keyboard" Option "Protocol" "evdev" Option "Dev Phys" "usb-0000:03:00.0-1.1/input0" Option "CoreKeyboard" Option "XkbRules" "xorg" Option "XkbModel" "pc104" Option "XkbLayout" "us" EndSection Tried again today, just to make sure I have it right, but no luck :-( X seems to be unfamiliar with the evdev protocol for keyboards... (++) ServerLayout "Right" (**) |-->Screen "Right Screen" (0) (**) | |-->Monitor "PHILIPS 107T" (**) | |-->Device "Matrox Graphics, Inc. MGA G550 AGP" (**) |-->Input Device "Right Keyboard" (**) Option "Protocol" "evdev" Config Error: "evdev" is not a valid keyboard protocol name (EE) Unable to determine the screen layout (EE) Error parsing the config file So it seems to me that the '055_lnx_evdev_keyboard.diff' patch is missing here... Will see if I can find the sources for ubuntu xorg, so I can take a look there. Mark. |
From: Micah F. G. <mfg...@uw...> - 2005-07-04 20:08:26
|
On Mon, 2005-04-07 at 13:01 +0200, Vojtech Pavlik wrote: > The assignment of HID usages to Linux input events is done in the > hid-input.c file. Change the #undef DEBUG in there to a #define DEBUG, > and take a look at (or send me) the resulting 'dmesg' output. There > you'll see which HID usages it didn't understand and how it assigned the > others. Hello again. The output is at the bottom of the message. The offending device is listed as the "Logitech USB Receiver." Another thing I just noticed is that the first physical device, which is standard keys (numbers, letters, etc), is claiming to have keys and buttons that it does not (or evtest is anyways). In any case, I'm game to fix this, so I guess I'm looking for recommendations on where to go from here. Oh, and sorry for all of the extra junk included in the dmesg output: Mapping: Keyboard.008c ---> Key.KPJpComma Mapping: Keyboard.008d ---> Key.Unknown Mapping: Keyboard.008e ---> Key.Unknown Mapping: Keyboard.008f ---> Key.Unknown Mapping: Keyboard.0090 ---> Key.Hanguel Mapping: Keyboard.0091 ---> Key.Hanja Mapping: Keyboard.0092 ---> Key.Katakana Mapping: Keyboard.0093 ---> Key.HIRAGANA Mapping: Keyboard.0094 ---> Key.Zenkaku/Hankaku Mapping: Keyboard.0095 ---> Key.Unknown Mapping: Keyboard.0096 ---> Key.Unknown Mapping: Keyboard.0097 ---> Key.Unknown Mapping: Keyboard.0098 ---> Key.Unknown Mapping: LED.NumLock ---> LED.NumLock Mapping: LED.CapsLock ---> LED.CapsLock Mapping: LED.ScrollLock ---> LED.ScrollLock input: USB HID v1.10 Keyboard [Logitech USB Receiver] on usb-0000:00:10.3-2 Mapping: Consumer.00b5 ---> Key.NextSong Mapping: Consumer.00b6 ---> Key.PreviousSong Mapping: Consumer.0045 ---> Key.Btn0 Mapping: Consumer.00cd ---> Key.PlayPause Mapping: Consumer.00e2 ---> Key.Mute Mapping: Consumer.00e9 ---> Key.VolumeUp Mapping: Consumer.00ea ---> Key.VolumeDown Mapping: Consumer.00b2 ---> Key.Record Mapping: Consumer.009c ---> Key.Btn1 Mapping: Consumer.009d ---> Key.Btn2 Mapping: Consumer.0224 ---> Key.Back Mapping: Consumer.0225 ---> Key.Forward Mapping: Consumer.00b7 ---> Key.StopCD Mapping: Consumer.0227 ---> Key.Refresh Mapping: Consumer.022a ---> Key.Bookmarks Mapping: Consumer.0192 ---> Key.Calc Mapping: Consumer.0194 ---> Key.File Mapping: Consumer.0209 ---> Key.Btn3 Mapping: Consumer.00b4 ---> Key.Rewind Mapping: Consumer.00b3 ---> Key.Fast Forward Mapping: Consumer.0223 ---> Key.HomePage Mapping: Consumer.008d ---> Key.Btn4 Mapping: Consumer.00b0 ---> Key.Play Mapping: Consumer.00b1 ---> Key.Pause Mapping: ffbc.000d ---> Key.Btn5 Mapping: ffbc.0025 ---> Key.Btn6 Mapping: ffbc.0024 ---> Key.Btn7 Mapping: ffbc.0047 ---> Key.Btn8 Mapping: ffbc.0049 ---> Key.Btn9 Mapping: ffbc.004a ---> Key.? Mapping: ffbc.0046 ---> Key.? Mapping: ffbc.0048 ---> Key.? Mapping: ffbc.004b ---> Key.? Mapping: ffbc.004c ---> Key.? Mapping: ffbc.0026 ---> Key.? Mapping: ffbc.004d ---> Key.LeftBtn Mapping: ffbc.0031 ---> Key.RightBtn Mapping: ffbc.0032 ---> Key.MiddleBtn Mapping: ffbc.0033 ---> Key.SideBtn Mapping: ffbc.0004 ---> Key.ExtraBtn Mapping: ffbc.0051 ---> Key.ForwardBtn Mapping: ffbc.0052 ---> Key.BackBtn input,hiddev96: USB HID v1.10 Device [Logitech USB Receiver] on usb-0000:00:10.3-2 usb 1-1: new low speed USB device using uhci_hcd and address 4 Mapping: Button.0001 ---> Key.LeftBtn Mapping: Button.0002 ---> Key.RightBtn Mapping: Button.0003 ---> Key.MiddleBtn Mapping: Button.0004 ---> Key.SideBtn Mapping: Button.0005 ---> Key.ExtraBtn Mapping: Button.0006 ---> Key.ForwardBtn Mapping: Button.0007 ---> Key.BackBtn Mapping: Button.0008 ---> Key.TaskBtn Mapping: GenericDesktop.X ---> Relative.X Mapping: GenericDesktop.Y ---> Relative.Y Mapping: GenericDesktop.Wheel ---> Relative.Wheel Mapping: LED.004b ---> IGNORED Mapping: LED.004b ---> IGNORED Mapping: LED.004b ---> IGNORED Mapping: LED.004b ---> IGNORED Mapping: LED.004b ---> IGNORED Mapping: LED.004b ---> IGNORED Mapping: LED.004b ---> IGNORED Mapping: LED.004b ---> IGNORED input: USB HID v1.10 Mouse [Logitech USB-PS/2 Optical Mouse] on usb-0000:00:10.0-1 mice: PS/2 mouse device common for all mice usb 1-2: new low speed USB device using uhci_hcd and address 5 Mapping: Keyboard.00e0 ---> Key.LeftControl Mapping: Keyboard.00e1 ---> Key.LeftShift Mapping: Keyboard.00e2 ---> Key.LeftAlt Mapping: Keyboard.00e3 ---> Key.LeftMeta Mapping: Keyboard.00e4 ---> Key.RightCtrl Mapping: Keyboard.00e5 ---> Key.RightShift Mapping: Keyboard.00e6 ---> Key.RightAlt Mapping: Keyboard.00e7 ---> Key.RightMeta Mapping: Keyboard.0000 ---> IGNORED Mapping: Keyboard.0001 ---> IGNORED Mapping: Keyboard.0002 ---> IGNORED Mapping: Keyboard.0003 ---> IGNORED Mapping: Keyboard.0004 ---> Key.A Mapping: Keyboard.0005 ---> Key.B Mapping: Keyboard.0006 ---> Key.C Mapping: Keyboard.0007 ---> Key.D Mapping: Keyboard.0008 ---> Key.E Mapping: Keyboard.0009 ---> Key.F Mapping: Keyboard.000a ---> Key.G Mapping: Keyboard.000b ---> Key.H Mapping: Keyboard.000c ---> Key.I Mapping: Keyboard.000d ---> Key.J Mapping: Keyboard.000e ---> Key.K Mapping: Keyboard.000f ---> Key.L Mapping: Keyboard.0010 ---> Key.M Mapping: Keyboard.0011 ---> Key.N Mapping: Keyboard.0012 ---> Key.O Mapping: Keyboard.0013 ---> Key.P Mapping: Keyboard.0014 ---> Key.Q Mapping: Keyboard.0015 ---> Key.R Mapping: Keyboard.0016 ---> Key.S Mapping: Keyboard.0017 ---> Key.T Mapping: Keyboard.0018 ---> Key.U Mapping: Keyboard.0019 ---> Key.V Mapping: Keyboard.001a ---> Key.W Mapping: Keyboard.001b ---> Key.X Mapping: Keyboard.001c ---> Key.Y Mapping: Keyboard.001d ---> Key.Z Mapping: Keyboard.001e ---> Key.1 Mapping: Keyboard.001f ---> Key.2 Mapping: Keyboard.0020 ---> Key.3 Mapping: Keyboard.0021 ---> Key.4 Mapping: Keyboard.0022 ---> Key.5 Mapping: Keyboard.0023 ---> Key.6 Mapping: Keyboard.0024 ---> Key.7 Mapping: Keyboard.0025 ---> Key.8 Mapping: Keyboard.0026 ---> Key.9 Mapping: Keyboard.0027 ---> Key.0 Mapping: Keyboard.0028 ---> Key.Enter Mapping: Keyboard.0029 ---> Key.Esc Mapping: Keyboard.002a ---> Key.Backspace Mapping: Keyboard.002b ---> Key.Tab Mapping: Keyboard.002c ---> Key.Space Mapping: Keyboard.002d ---> Key.Minus Mapping: Keyboard.002e ---> Key.Equal Mapping: Keyboard.002f ---> Key.LeftBrace Mapping: Keyboard.0030 ---> Key.RightBrace Mapping: Keyboard.0031 ---> Key.BackSlash Mapping: Keyboard.0032 ---> Key.BackSlash Mapping: Keyboard.0033 ---> Key.Semicolon Mapping: Keyboard.0034 ---> Key.Apostrophe Mapping: Keyboard.0035 ---> Key.Grave Mapping: Keyboard.0036 ---> Key.Comma Mapping: Keyboard.0037 ---> Key.Dot Mapping: Keyboard.0038 ---> Key.Slash Mapping: Keyboard.0039 ---> Key.CapsLock Mapping: Keyboard.003a ---> Key.F1 Mapping: Keyboard.003b ---> Key.F2 Mapping: Keyboard.003c ---> Key.F3 Mapping: Keyboard.003d ---> Key.F4 Mapping: Keyboard.003e ---> Key.F5 Mapping: Keyboard.003f ---> Key.F6 Mapping: Keyboard.0040 ---> Key.F7 Mapping: Keyboard.0041 ---> Key.F8 Mapping: Keyboard.0042 ---> Key.F9 Mapping: Keyboard.0043 ---> Key.F10 Mapping: Keyboard.0044 ---> Key.F11 Mapping: Keyboard.0045 ---> Key.F12 Mapping: Keyboard.0046 ---> Key.SysRq Mapping: Keyboard.0047 ---> Key.ScrollLock Mapping: Keyboard.0048 ---> Key.Pause Mapping: Keyboard.0049 ---> Key.Insert Mapping: Keyboard.004a ---> Key.Home Mapping: Keyboard.004b ---> Key.PageUp Mapping: Keyboard.004c ---> Key.Delete Mapping: Keyboard.004d ---> Key.End Mapping: Keyboard.004e ---> Key.PageDown Mapping: Keyboard.004f ---> Key.Right Mapping: Keyboard.0050 ---> Key.Left Mapping: Keyboard.0051 ---> Key.Down Mapping: Keyboard.0052 ---> Key.Up Mapping: Keyboard.0053 ---> Key.NumLock Mapping: Keyboard.0054 ---> Key.KPSlash Mapping: Keyboard.0055 ---> Key.KPAsterisk Mapping: Keyboard.0056 ---> Key.KPMinus Mapping: Keyboard.0057 ---> Key.KPPlus Mapping: Keyboard.0058 ---> Key.KPEnter Mapping: Keyboard.0059 ---> Key.KP1 Mapping: Keyboard.005a ---> Key.KP2 Mapping: Keyboard.005b ---> Key.KP3 Mapping: Keyboard.005c ---> Key.KP4 Mapping: Keyboard.005d ---> Key.KP5 Mapping: Keyboard.005e ---> Key.KP6 Mapping: Keyboard.005f ---> Key.KP7 Mapping: Keyboard.0060 ---> Key.KP8 Mapping: Keyboard.0061 ---> Key.KP9 Mapping: Keyboard.0062 ---> Key.KP0 Mapping: Keyboard.0063 ---> Key.KPDot Mapping: Keyboard.0064 ---> Key.102nd Mapping: Keyboard.0065 ---> Key.Compose Mapping: Keyboard.0066 ---> Key.Power Mapping: Keyboard.0067 ---> Key.KPEqual Mapping: Keyboard.0068 ---> Key.F13 Mapping: Keyboard.0069 ---> Key.F14 Mapping: Keyboard.006a ---> Key.F15 Mapping: Keyboard.006b ---> Key.F16 Mapping: Keyboard.006c ---> Key.F17 Mapping: Keyboard.006d ---> Key.F18 Mapping: Keyboard.006e ---> Key.F19 Mapping: Keyboard.006f ---> Key.F20 Mapping: Keyboard.0070 ---> Key.F21 Mapping: Keyboard.0071 ---> Key.F22 Mapping: Keyboard.0072 ---> Key.F23 Mapping: Keyboard.0073 ---> Key.F24 Mapping: Keyboard.0074 ---> Key.Open Mapping: Keyboard.0075 ---> Key.Help Mapping: Keyboard.0076 ---> Key.Props Mapping: Keyboard.0077 ---> Key.Front Mapping: Keyboard.0078 ---> Key.Stop Mapping: Keyboard.0079 ---> Key.Again Mapping: Keyboard.007a ---> Key.Undo Mapping: Keyboard.007b ---> Key.Cut Mapping: Keyboard.007c ---> Key.Copy Mapping: Keyboard.007d ---> Key.Paste Mapping: Keyboard.007e ---> Key.Find Mapping: Keyboard.007f ---> Key.Mute Mapping: Keyboard.0080 ---> Key.VolumeUp Mapping: Keyboard.0081 ---> Key.VolumeDown Mapping: Keyboard.0082 ---> Key.Unknown Mapping: Keyboard.0083 ---> Key.Unknown Mapping: Keyboard.0084 ---> Key.Unknown Mapping: Keyboard.0085 ---> Key.KPComma Mapping: Keyboard.0086 ---> Key.Unknown Mapping: Keyboard.0087 ---> Key.RO Mapping: Keyboard.0088 ---> Key.Katakana/Hiragana Mapping: Keyboard.0089 ---> Key.Yen Mapping: Keyboard.008a ---> Key.Henkan Mapping: Keyboard.008b ---> Key.Muhenkan Mapping: Keyboard.008c ---> Key.KPJpComma Mapping: Keyboard.008d ---> Key.Unknown Mapping: Keyboard.008e ---> Key.Unknown Mapping: Keyboard.008f ---> Key.Unknown Mapping: Keyboard.0090 ---> Key.Hanguel Mapping: Keyboard.0091 ---> Key.Hanja Mapping: Keyboard.0092 ---> Key.Katakana Mapping: Keyboard.0093 ---> Key.HIRAGANA Mapping: Keyboard.0094 ---> Key.Zenkaku/Hankaku Mapping: Keyboard.0095 ---> Key.Unknown Mapping: Keyboard.0096 ---> Key.Unknown Mapping: Keyboard.0097 ---> Key.Unknown Mapping: Keyboard.0098 ---> Key.Unknown Mapping: Keyboard.0099 ---> Key.Unknown Mapping: Keyboard.009a ---> Key.Unknown Mapping: Keyboard.009b ---> Key.Unknown Mapping: Keyboard.009c ---> Key.Unknown Mapping: Keyboard.009d ---> Key.Unknown Mapping: Keyboard.009e ---> Key.Unknown Mapping: Keyboard.009f ---> Key.Unknown Mapping: Keyboard.00a0 ---> Key.Unknown Mapping: Keyboard.00a1 ---> Key.Unknown Mapping: Keyboard.00a2 ---> Key.Unknown Mapping: Keyboard.00a3 ---> Key.Unknown Mapping: Keyboard.00a4 ---> Key.Unknown Mapping: LED.NumLock ---> LED.NumLock Mapping: LED.CapsLock ---> LED.CapsLock Mapping: LED.ScrollLock ---> LED.ScrollLock Mapping: LED.Compose ---> LED.Compose Mapping: LED.Kana ---> LED.Kana input: USB HID v1.10 Keyboard [Logitech Logitech USB Keyboard] on usb-0000:00:10.0-2 Mapping: Consumer.0225 ---> Key.Forward Mapping: Consumer.00b6 ---> Key.PreviousSong Mapping: Consumer.00b5 ---> Key.NextSong Mapping: Consumer.00b7 ---> Key.StopCD Mapping: Consumer.00cd ---> Key.PlayPause Mapping: Consumer.00ea ---> Key.VolumeDown Mapping: Consumer.00e9 ---> Key.VolumeUp Mapping: Consumer.00e2 ---> Key.Mute Mapping: Consumer.0192 ---> Key.Calc Mapping: Consumer.018a ---> Key.Mail Mapping: Consumer.0221 ---> Key.Find Mapping: Consumer.0223 ---> Key.HomePage Mapping: Consumer.022a ---> Key.Bookmarks Mapping: Consumer.0224 ---> Key.Back Mapping: Consumer.0183 ---> Key.Config Mapping: Button.0001 ---> Key.Btn0 Mapping: Button.0002 ---> Key.Btn1 Mapping: Button.0003 ---> Key.Btn2 Mapping: Button.0004 ---> Key.Btn3 Mapping: Button.0005 ---> Key.Btn4 Mapping: Button.0006 ---> Key.Btn5 Mapping: Button.0007 ---> Key.Btn6 Mapping: Button.0008 ---> Key.Btn7 Mapping: Button.0009 ---> Key.Btn8 Mapping: Button.000a ---> Key.Btn9 Mapping: Button.000b ---> Key.? Mapping: Button.000c ---> Key.? Mapping: Button.000d ---> Key.? Mapping: Button.000e ---> Key.? Mapping: Button.000f ---> Key.? Mapping: Button.0010 ---> Key.? Mapping: Button.0011 ---> Key.LeftBtn Mapping: Button.0012 ---> Key.RightBtn Mapping: Button.0013 ---> Key.MiddleBtn Mapping: Button.0014 ---> Key.SideBtn Mapping: Button.0015 ---> Key.ExtraBtn Mapping: Button.0016 ---> Key.ForwardBtn Mapping: Button.0017 ---> Key.BackBtn Mapping: Button.0018 ---> Key.TaskBtn Mapping: Button.0019 ---> Key.? Mapping: Button.001a ---> Key.? Mapping: Button.001b ---> Key.? Mapping: Button.001c ---> Key.? Mapping: Button.001d ---> Key.? Mapping: Button.001e ---> Key.? Mapping: Button.001f ---> Key.? Mapping: Button.0020 ---> Key.? Mapping: Button.0021 ---> Key.Trigger Mapping: Button.0022 ---> Key.ThumbBtn Mapping: Button.0023 ---> Key.ThumbBtn2 Mapping: Button.0024 ---> Key.TopBtn Mapping: Button.0025 ---> Key.TopBtn2 Mapping: Button.0026 ---> Key.PinkieBtn Mapping: Button.0027 ---> Key.BaseBtn Mapping: Button.0028 ---> Key.BaseBtn2 Mapping: Button.0029 ---> Key.BaseBtn3 Mapping: Button.002a ---> Key.BaseBtn4 Mapping: Button.002b ---> Key.BaseBtn5 Mapping: Button.002c ---> Key.BaseBtn6 Mapping: Button.002d ---> Key.? Mapping: Button.002e ---> Key.? Mapping: Button.002f ---> Key.? Mapping: Button.0030 ---> Key.BtnDead Mapping: Button.0031 ---> Key.BtnA Mapping: Button.0032 ---> Key.BtnB Mapping: Button.0033 ---> Key.BtnC Mapping: Button.0034 ---> Key.BtnX Mapping: Button.0035 ---> Key.BtnY Mapping: Button.0036 ---> Key.BtnZ Mapping: Button.0037 ---> Key.BtnTL Mapping: Button.0038 ---> Key.BtnTR Mapping: Button.0039 ---> Key.BtnTL2 Mapping: Button.003a ---> Key.BtnTR2 Mapping: Button.003b ---> Key.BtnSelect Mapping: Button.003c ---> Key.BtnStart Mapping: Button.003d ---> Key.BtnMode Mapping: Button.003e ---> Key.BtnThumbL Mapping: Button.003f ---> Key.BtnThumbR Mapping: Button.0040 ---> Key.? Mapping: Consumer.0201 ---> Absolute.Misc Mapping: Consumer.0289 ---> Absolute.? Mapping: Consumer.028b ---> Absolute.? Mapping: Consumer.028c ---> Absolute.? Mapping: Consumer.021a ---> Key.Undo Mapping: Consumer.0279 ---> Absolute.? Mapping: Consumer.0208 ---> Absolute.? Mapping: Consumer.0207 ---> Absolute.? Mapping: Consumer.0194 ---> Key.File Mapping: Consumer.01a7 ---> Absolute.? Mapping: Consumer.01b6 ---> Absolute.? Mapping: Consumer.01b7 ---> Absolute.? Mapping: GenericDesktop.SystemSleep ---> Key.Sleep Mapping: GenericDesktop.SystemPowerDown ---> Key.Power Mapping: GenericDesktop.SystemWakeUp ---> Key.WakeUp Mapping: GenericDesktop.Wheel ---> Relative.Wheel Mapping: GenericDesktop.X ---> Relative.X Mapping: GenericDesktop.Y ---> Relative.Y input: USB HID v1.10 Mouse [Logitech Logitech USB Keyboard] on usb-0000:00:10.0-2 input: PC Speaker --=20 Micah F. Galizia mfg...@uw... "The mark of an immature man is that he wants to die nobly for a cause, while the mark of the mature man is that he wants to live humbly for one." --W. Stekel |
From: Hugo V. <hvw...@ya...> - 2005-07-04 14:00:59
|
Who knows where the patch went. Here: diff -Naur linux-2.6.13.orig/drivers/char/keyboard.c linux-2.6.13/drivers/char/keyboard.c --- linux-2.6.13.orig/drivers/char/keyboard.c 2005-07-04 07:49:14.000000000 -0500 +++ linux-2.6.13/drivers/char/keyboard.c 2005-07-04 06:47:25.000000000 -0500 @@ -199,7 +199,7 @@ if (test_bit(EV_SND, dev->evbit)) { if (test_bit(SND_TONE, dev->sndbit)) input_event(dev, EV_SND, SND_TONE, hz); - if (test_bit(SND_BELL, dev->sndbit)) + else if (test_bit(SND_BELL, handle->dev->sndbit)) input_event(dev, EV_SND, SND_BELL, 1); } if (ticks) @@ -1128,6 +1128,7 @@ } static char kbd_name[] = "kbd"; +static char spk_name[] = "spk"; /* * When a keyboard (or other input device) is found, the kbd_connect @@ -1187,6 +1188,32 @@ kbd_refresh_leds(handle); } else if (test_bit(EV_SND, dev->evbit) && admin_vt && !admin_vt->beeper) { + + /* + * We map the EV_SND-enabled device to all vt, with as many handlers as needed + * I don't know if the behaviour of creating such many handlers is acceptable + * here ? + * Jean-Daniel Pauget 2005-01-08 + */ + list_for_each_entry (vt, &vt_list, node) + if (!vt->beeper) { + if (!(handle = kmalloc(sizeof(struct input_handle), GFP_KERNEL))) + continue; + memset(handle, 0, sizeof(struct input_handle)); + + handle->dev = dev; + handle->handler = handler; + handle->name = spk_name; + input_open_device(handle); + vt->beeper = handle; + handle->private = vt; + printk(KERN_INFO "keyboard.c [%s] vc:%d-%d\n", + dev->name, + vt->first_vc + 1, + vt->first_vc + vt->vc_count); + vt_map_input(vt); + } + admin_vt->beeper = handle; handle->private = admin_vt; vt_map_input(admin_vt); diff -Naur linux-2.6.13.orig/drivers/i2c/chips/w83627hf.c linux-2.6.13/drivers/i2c/chips/w83627hf.c --- linux-2.6.13.orig/drivers/i2c/chips/w83627hf.c 2005-07-04 07:49:03.000000000 -0500 +++ linux-2.6.13/drivers/i2c/chips/w83627hf.c 2005-07-04 06:18:11.000000000 -0500 @@ -28,6 +28,7 @@ w83627hf 9 3 2 3 0x20 0x5ca3 no yes(LPC) w83627thf 7 3 3 3 0x90 0x5ca3 no yes(LPC) w83637hf 7 3 3 3 0x80 0x5ca3 no yes(LPC) + w83687thf ? ? ? ? 0x90 0x5ca3 no yes(LPC) w83697hf 8 2 2 2 0x60 0x5ca3 no yes(LPC) For other winbond chips, and for i2c support in the above chips, @@ -61,7 +62,7 @@ static unsigned int normal_isa[] = { 0, I2C_CLIENT_ISA_END }; /* Insmod parameters */ -SENSORS_INSMOD_4(w83627hf, w83627thf, w83697hf, w83637hf); +SENSORS_INSMOD_5(w83627hf, w83627thf, w83697hf, w83637hf, w83687thf); static int init = 1; module_param(init, bool, 0); @@ -133,6 +134,7 @@ #define W627THF_DEVID 0x82 #define W697_DEVID 0x60 #define W637_DEVID 0x70 +#define W687THF_DEVID 0x85 #define WINB_ACT_REG 0x30 #define WINB_BASE_REG 0x60 /* Constants specified below */ @@ -408,7 +410,8 @@ long in0; if ((data->vrm_ovt & 0x01) && - (w83627thf == data->type || w83637hf == data->type)) + (w83627thf == data->type || w83637hf == data->type + || w83687thf == data->type)) /* use VRM9 calculation */ in0 = (long)((reg * 488 + 70000 + 50) / 100); @@ -449,7 +452,8 @@ down(&data->update_lock); if ((data->vrm_ovt & 0x01) && - (w83627thf == data->type || w83637hf == data->type)) + (w83627thf == data->type || w83637hf == data->type + || w83687thf == data->type)) /* use VRM9 calculation */ data->in_min[0] = (u8)(((val * 100) - 70000 + 244) / 488); @@ -474,7 +478,8 @@ down(&data->update_lock); if ((data->vrm_ovt & 0x01) && - (w83627thf == data->type || w83637hf == data->type)) + (w83627thf == data->type || w83637hf == data->type + || w83687thf == data->type)) /* use VRM9 calculation */ data->in_max[0] = (u8)(((val * 100) - 70000 + 244) / 488); @@ -841,7 +846,7 @@ down(&data->update_lock); - if (data->type == w83627thf) { + if (data->type == w83627thf || data->type == w83687thf) { /* bits 0-3 are reserved in 627THF */ data->pwm[nr - 1] = PWM_TO_REG(val) & 0xf0; w83627hf_write_value(client, @@ -980,7 +985,8 @@ if(val != W627_DEVID && val != W627THF_DEVID && val != W697_DEVID && - val != W637_DEVID) { + val != W637_DEVID && + val != W687THF_DEVID) { superio_exit(); return -ENODEV; } @@ -1041,6 +1047,8 @@ kind = w83627thf; else if(val == W637_DEVID) kind = w83637hf; + else if(val == W687THF_DEVID) + kind = w83687thf; else { dev_info(&adapter->dev, "Unsupported chip (dev_id=0x%02X).\n", val); @@ -1079,6 +1087,8 @@ client_name = "w83697hf"; } else if (kind == w83637hf) { client_name = "w83637hf"; + } else if (kind == w83687thf) { + client_name = "w83687thf"; } /* Fill in the remaining client fields and put into the global list */ @@ -1108,7 +1118,7 @@ device_create_file_in(new_client, 2); device_create_file_in(new_client, 3); device_create_file_in(new_client, 4); - if (kind != w83627thf && kind != w83637hf) { + if (kind == w83627hf || kind == w83697hf) { device_create_file_in(new_client, 5); device_create_file_in(new_client, 6); } @@ -1142,7 +1152,7 @@ device_create_file_pwm(new_client, 1); device_create_file_pwm(new_client, 2); - if (kind == w83627thf || kind == w83637hf) + if (kind == w83627thf || kind == w83637hf || kind == w83687thf) device_create_file_pwm(new_client, 3); device_create_file_sensor(new_client, 1); @@ -1316,12 +1326,13 @@ int lo = w83627hf_read_value(client, W83781D_REG_VID_FANDIV); int hi = w83627hf_read_value(client, W83781D_REG_CHIPID); data->vid = (lo & 0x0f) | ((hi & 0x01) << 4); - } else if (w83627thf == data->type) { + } else if (w83627thf == data->type || w83687thf == data->type) { data->vid = w83627thf_read_gpio5(client) & 0x3f; } /* Read VRM & OVT Config only once */ - if (w83627thf == data->type || w83637hf == data->type) { + if (w83627thf == data->type || w83637hf == data->type + || w83687thf == data->type) { data->vrm_ovt = w83627hf_read_value(client, W83627THF_REG_VRM_OVT_CFG); data->vrm = (data->vrm_ovt & 0x01) ? 90 : 82; @@ -1402,7 +1413,8 @@ for (i = 0; i <= 8; i++) { /* skip missing sensors */ if (((data->type == w83697hf) && (i == 1)) || - ((data->type == w83627thf || data->type == w83637hf) + ((data->type == w83627thf || data->type == w83637hf + || data->type == w83687thf) && (i == 4 || i == 5))) continue; data->in[i] = @@ -1425,7 +1437,7 @@ u8 tmp = w83627hf_read_value(client, W836X7HF_REG_PWM(data->type, i)); /* bits 0-3 are reserved in 627THF */ - if (data->type == w83627thf) + if (data->type == w83627thf || data->type == w83687thf) tmp &= 0xf0; data->pwm[i - 1] = tmp; if(i == 2 && diff -Naur linux-2.6.13.orig/drivers/video/vesafb-thread.c linux-2.6.13/drivers/video/vesafb-thread.c --- linux-2.6.13.orig/drivers/video/vesafb-thread.c 2005-07-04 07:49:15.000000000 -0500 +++ linux-2.6.13/drivers/video/vesafb-thread.c 2005-07-04 06:30:12.000000000 -0500 @@ -540,7 +540,8 @@ vesafb_handle_tasks(); wait_event_interruptible(vesafb_wait, !list_empty(&vesafb_task_list)); if (current->flags & PF_FREEZE) - refrigerator(PF_FREEZE); + refrigerator(); +/* refrigerator(PF_FREEZE); */ if (signal_pending(current)) break; ____________________________________________________ Yahoo! Sports Rekindle the Rivalries. Sign up for Fantasy Football http://football.fantasysports.yahoo.com |
From: Hugo V. <hvw...@ya...> - 2005-07-04 13:28:38
|
Hi, Compiled with Zoltan's patch and: 1. keycodes are still messed up since 2.6.11, see http://sourceforge.net/mailarchive/forum.php?thread_id=7636775&forum_id=5379 2. With Spock's vesafb-tng you get an error that the refrigerator he uses in vesafb-thread.c is too full. When you empty it, it compiles. Common problem with refrigerators. 3. No bell for secondary console. It confirms my suspicion that the console is being used to watch Linus' messages flash by, causing the unfulfilled wishful thinking to replace all this with an X progressbar. I enclose a patch for [2] and [3], wish I had one for [1], and to make i2c recognize the Winbond w83687thf chip: don't y'all have one? Hugo __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com |
From: Vojtech P. <vo...@su...> - 2005-07-04 11:02:09
|
On Mon, Jul 04, 2005 at 01:36:54AM -0500, Dmitry Torokhov wrote: > On Friday 01 July 2005 18:40, James Simmons wrote: > > > > I CC you with Dmitry. Him and Vojtech are the main input guys now. > > > > Unfortunately I haven't got into USB (and especially HID) side of input > subsystem, at least not yet. Vojetch is your best chance here, although > people on linux-usb-devel might be of help too. > > > > > On Tue, 28 Jun 2005, Micah F. Galizia wrote: > > > > > Hello all, > > > > > > Recently I came into possession of a Logitech UltraX Media Remote. It > > > has a USB RF receiver, and when I plug it in, it shows up as two hid > > > devices (normal keys and media keys). The normal keys > > > (letters/numbers/arrows/etc) all work as they should, but some of the > > > special buttons on the second device are unknown (though they still show > > > up) or need to be mapped correctly. > > > > > > I would like to fix this. I had a quick look through the docs and on > > > the list, and didn't see much on how to tackle this problem. So, if > > > someone could enlighten me, I would like to know what the best approach > > > is... The assignment of HID usages to Linux input events is done in the hid-input.c file. Change the #undef DEBUG in there to a #define DEBUG, and take a look at (or send me) the resulting 'dmesg' output. There you'll see which HID usages it didn't understand and how it assigned the others. > > > Does this require a completely separate driver? No. > > > I wouldn't imagine so > > > since all the keys generate an event, just not always the right event. > > > If not, is there somewhere in the input system I can tune the key map, > > > or provide one specific to this device? Assuming neither is correct, > > > what should I be doing, and where should I be looking for docs/examples? -- Vojtech Pavlik SuSE Labs, SuSE CR |
From: Vineesh <vi...@hc...> - 2005-07-04 07:11:52
|
Hi all, I set up a 3-terminal PC with debian sarge. I tried to run wine on my ruby patched setup but it's not running. It's loading after that it's hanging up. All other applications are running perfectly.But in the base debian kernel(2.6.8-x) it's running. I am using kernel 2.6.10 with ruby patched. I am working with an AMD 64 board with Nvidia chipset. Wat may b the problem? regards vineesh On Mon, 2005-07-04 at 12:06, Dmitry Torokhov wrote: > On Friday 01 July 2005 18:40, James Simmons wrote: > > > > I CC you with Dmitry. Him and Vojtech are the main input guys now. > > > > Unfortunately I haven't got into USB (and especially HID) side of input > subsystem, at least not yet. Vojetch is your best chance here, although > people on linux-usb-devel might be of help too. > > > > > On Tue, 28 Jun 2005, Micah F. Galizia wrote: > > > > > Hello all, > > > > > > Recently I came into possession of a Logitech UltraX Media Remote. It > > > has a USB RF receiver, and when I plug it in, it shows up as two hid > > > devices (normal keys and media keys). The normal keys > > > (letters/numbers/arrows/etc) all work as they should, but some of the > > > special buttons on the second device are unknown (though they still show > > > up) or need to be mapped correctly. > > > > > > I would like to fix this. I had a quick look through the docs and on > > > the list, and didn't see much on how to tackle this problem. So, if > > > someone could enlighten me, I would like to know what the best approach > > > is... > > > > > > Does this require a completely separate driver? I wouldn't imagine so > > > since all the keys generate an event, just not always the right event. > > > If not, is there somewhere in the input system I can tune the key map, > > > or provide one specific to this device? Assuming neither is correct, > > > what should I be doing, and where should I be looking for docs/examples? > > > > > > Thanks in advance! > > > -- > > > Micah F. Galizia > > > mfg...@uw... > > > > > > "The mark of an immature man is that he wants to die > > > nobly for a cause, while the mark of the mature man is > > > that he wants to live humbly for one." --W. Stekel > > > > > |
From: Dmitry T. <dto...@am...> - 2005-07-04 06:37:10
|
On Friday 01 July 2005 18:40, James Simmons wrote: > > I CC you with Dmitry. Him and Vojtech are the main input guys now. > Unfortunately I haven't got into USB (and especially HID) side of input subsystem, at least not yet. Vojetch is your best chance here, although people on linux-usb-devel might be of help too. > > On Tue, 28 Jun 2005, Micah F. Galizia wrote: > > > Hello all, > > > > Recently I came into possession of a Logitech UltraX Media Remote. It > > has a USB RF receiver, and when I plug it in, it shows up as two hid > > devices (normal keys and media keys). The normal keys > > (letters/numbers/arrows/etc) all work as they should, but some of the > > special buttons on the second device are unknown (though they still show > > up) or need to be mapped correctly. > > > > I would like to fix this. I had a quick look through the docs and on > > the list, and didn't see much on how to tackle this problem. So, if > > someone could enlighten me, I would like to know what the best approach > > is... > > > > Does this require a completely separate driver? I wouldn't imagine so > > since all the keys generate an event, just not always the right event. > > If not, is there somewhere in the input system I can tune the key map, > > or provide one specific to this device? Assuming neither is correct, > > what should I be doing, and where should I be looking for docs/examples? > > > > Thanks in advance! > > -- > > Micah F. Galizia > > mfg...@uw... > > > > "The mark of an immature man is that he wants to die > > nobly for a cause, while the mark of the mature man is > > that he wants to live humbly for one." --W. Stekel > > > -- Dmitry |