Re: hid_apple bug: arrow keys interpreted as Fn

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On May 20, 2009, at 07:19, Jiri Kosina wrote:

On Tue, 19 May 2009, Jeremy Huddleston wrote:

press right:
May 19 18:01:14 aeris kernel: [ 256.453247] drivers/hid/hid- core.c: report (size 8) (unnumbered) May 19 18:01:14 aeris kernel: [ 256.453259] drivers/hid/hid- core.c: report 0 (size 8) = 00 00 4f 00 00 00 00 00
[ ... ]
press down:
May 19 18:01:17 aeris kernel: [ 259.429256] drivers/hid/hid- core.c: report (size 8) (unnumbered) May 19 18:01:17 aeris kernel: [ 259.429268] drivers/hid/hid- core.c: report 0 (size 8) = 00 00 4f 51 00 00 00 00
[ ... ]
press left:
May 19 18:01:20 aeris kernel: [ 262.469256] drivers/hid/hid- core.c: report (size 8) (unnumbered) May 19 18:01:20 aeris kernel: [ 262.469269] drivers/hid/hid- core.c: report 0 (size 8) = 00 00 01 01 01 01 01 01
[ ... ]
release right:
May 19 18:01:22 aeris kernel: [ 264.981247] drivers/hid/hid- core.c: report (size 8) (unnumbered) May 19 18:01:22 aeris kernel: [ 264.981258] drivers/hid/hid- core.c: report 0 (size 8) = 00 00 51 50 00 00 00 00
[ ... ]
release down:
May 19 18:01:25 aeris kernel: [ 267.405254] drivers/hid/hid- core.c: report (size 8) (unnumbered) May 19 18:01:25 aeris kernel: [ 267.405267] drivers/hid/hid- core.c: report 0 (size 8) = 00 00 50 00 00 00 00 00
[ ... ]
release left:
May 19 18:01:26 aeris kernel: [ 269.277246] drivers/hid/hid- core.c: report (size 8) (unnumbered) May 19 18:01:26 aeris kernel: [ 269.277258] drivers/hid/hid- core.c: report 0 (size 8) = 00 00 00 00 00 00 00 00

Looks like the state machine inside the keyboard gets a little bit crazy when you press the third button. The data that HID core sees coming on USB
bus really don't represent [right,down,left] being pressed.

Do you have any chance to verify whether this works properly in a
different operating system? It would require very specific handling
violating the standard.

So in OSX, I certainly don't see the Fn misinterpretation. There is another odd behavior in OSX that is probably related to an underlying hardware quirk that OSX just deals with more elegantly.

In OSX, I see this behavior:

press right:
   event received that right arrow pressed
press down:
   event received that down arrow pressed
press left:
   no event
release right:
   event received that right arrow released
   event received that left arrow pressed
release down:
   event received that down arrow released
release left:
   event received that left arrow released

So there seems to be an underlying problem that needs to be worked around. Perhaps we can figure out a way to handle it in a way results in similar behavior to the OSX...


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

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux