I`ve got a Microsoft Natural Ergonomic Keyboard 4000. Everything is fine except multimedia
buttons. I found a gentoo-wiki HOWTO and used it to setup them. I recompiled the kernel - and now these buttons are working in console mode.
But I failed to setup X. I made necessery changes in my xorg.conf. This includes setting up two logical keyboards connected to different "events" (one keyboard - for common buttons and another one - for multimedia). But now X Server crashes:
Code:
(II) evdev brain: Rescanning devices (1).
(**) Option "CoreKeyboard"
(**) Keyboard1-usb-0000:00:02.1-1/input0: Core Keyboard
(**) Option "XkbRules" "xorg"
(**) Option "XkbModel" "evdev"
(**) Option "XkbLayout" "us,ru"
(**) Option "XkbVariant" ",winkeys"
(**) Option "XkbOptions" "grp:shift_toggle,grp_led:scroll"
(II) evdev brain: Rescanning devices (2).
(II) Keyboard2-usb-0000:00:02.1-1/input1: Found 1 absolute axes.
(II) Keyboard2-usb-0000:00:02.1-1/input1: Configuring as pointer.
(**) Keyboard2-usb-0000:00:02.1-1/input1: Configuring in Absolute mode.
(**) Keyboard2-usb-0000:00:02.1-1/input1: AbsoluteScreen: -1.
*** If unresolved symbols were reported above, they might not
*** be the reason for the server aborting.
Backtrace:
0: /usr/bin/X(xf86SigHandler+0x89) [0x80b67d9]
1: [0xffffe420]
2: /usr/lib/xorg/modules/input/evdev_drv.so [0xa7f9d4fb]
3: /usr/lib/xorg/modules/input/evdev_drv.so [0xa7f9e717]
4: /usr/lib/xorg/modules/input/evdev_drv.so(evdevNewDriver+0x4c) [0xa7f9ed5c]
5: /usr/lib/xorg/modules/input/evdev_drv.so [0xa7f9dc28]
6: /usr/bin/X(InitInput+0x176) [0x809f656]
7: /usr/bin/X(main+0x35f) [0x806e4af]
8: /lib/tls/libc.so.6(__libc_start_main+0xc8) [0xa7dabea8]
9: /usr/bin/X(FontFileCompleteXLFD+0xad) [0x806d911]
Fatal server error:
Caught signal 11. Server aborting
When I reduce my xorg.conf by removing the second logical keyboard - X server works but as it is expected multimedia keys don`t work:
Code:
InputDevice "Keyboard1" "CoreKeyboard"
# InputDevice "Keyboard2"
InputDevice "Mouse1" "CorePointer"
I understand the problem as the following: evdev module can`t distinguish whether the "Keyboard2" is keyboard or mouse - and makes false choice.
Any suggestions?