xf86-input-evdev-1.2.0 broken

Thomas Ilnseher illth at gmx.de
Fri May 30 11:19:37 PDT 2008


On Tue, 2008-05-27 at 08:27 +0930, Peter Hutterer wrote:

> 
> it's a bluetooth mouse, right? when it disconnects, the kernel device probably
> disappears. evdev 1.1 does its own hotplugging internal to the driver and
> interferes with the x server's hotplugging. this probably causes the crash.
yes that's correct.
> 
> you really need 1.2 or greater to avoid this.
I'm on 1.2 now.

> some devices also have a tendency to report absolute axes, which can overwrite
> the relative axes. so what may happen in your case is that X is interpreted as
> absolute axis, which doesnt make much sense on a mouse.
> 
> a log of the server will tell us that.

You were right, Peter.
The mouse reported some weird usage (usage page 0006, usage 0020),
which got mapped by the kernel to abs.misc this indeed did confuse
evdev. The log revealed this indeed:

====  excerpt from Xorg.0.log  ====
(II) Module evdev: vendor="X.Org Foundation"
	compiled for 1.4.0.90, module version = 1.2.0
	Module class: X.Org XInput Driver
	ABI class: X.Org XInput driver, version 2.0
(**) MLK Corp.                                        (8) Button Mouse:
always reports core events
(II) MLK Corp.                                        (8) Button Mouse:
Found 1 absolute axes.
(II) MLK Corp.                                        (8) Button Mouse:
Configuring as pointer.
(II) MLK Corp.                                        (8) Button Mouse:
Found 4 relative axes.
(II) MLK Corp.                                        (8) Button Mouse:
Configuring as pointer.
(EE) MLK Corp.                                        (8) Button Mouse:
Unable to parse 'RelAxis 0' as a map specifier.
(**) MLK Corp.                                        (8) Button Mouse:
Configuring 1 absolute axes.
(II) MLK Corp.                                        (8) Button Mouse:
Checking button DIGI_STYLUS (74)
(II) MLK Corp.                                        (8) Button Mouse:
Checking bit 330
(EE) MLK Corp.                                        (8) Button Mouse:
AbsoluteTouch: 'DIGI_Touch' does not exist.
(II) MLK Corp.                                        (8) Button Mouse:
Found 5 mouse buttons
(II) MLK Corp.                                        (8) Button Mouse:
Configured 10 mouse buttons.
(II) XINPUT: Adding extended input device "MLK Corp.
(8) Button Mouse" (type: MOUSE)
(**) MLK Corp.                                        (8) Button Mouse:
2 valuators.
(**) MLK Corp.                                        (8) Button Mouse:
Configuring in Absolute mode.
(**) MLK Corp.                                        (8) Button Mouse:
Registering 10 buttons.
(II) MLK Corp.                                        (8) Button Mouse:
Init
(II) MLK Corp.                                        (8) Button Mouse:
On
====  END of excerpt from Xorg.0.log  ====

Now I patched my kernel to ignore these axis (and an Consumer.HWheel
that also for sure doesn't exist on this mouse).

it works like a charm right now:

====  excerpt from Xorg.0.log  ====
(II) Module evdev: vendor="X.Org Foundation"
	compiled for 1.4.0.90, module version = 1.2.0
	Module class: X.Org XInput Driver
	ABI class: X.Org XInput driver, version 2.0
(**) MLK Corp.                                        (8) Button Mouse:
always reports core events
(II) MLK Corp.                                        (8) Button Mouse:
Found 3 relative axes.
(II) MLK Corp.                                        (8) Button Mouse:
Configuring as pointer.
(II) MLK Corp.                                        (8) Button Mouse:
Found 5 mouse buttons
(II) MLK Corp.                                        (8) Button Mouse:
Configured 8 mouse buttons.
(II) XINPUT: Adding extended input device "MLK Corp.
(8) Button Mouse" (type: MOUSE)
(**) MLK Corp.                                        (8) Button Mouse:
2 valuators.
(**) MLK Corp.                                        (8) Button Mouse:
Configuring in Absolute mode.
(**) MLK Corp.                                        (8) Button Mouse:
Registering 8 buttons.
(II) MLK Corp.                                        (8) Button Mouse:
Init
(II) MLK Corp.                                        (8) Button Mouse:
On
====  END of excerpt from Xorg.0.log  ====

Thx for your help, 
Thomas

-- 
Thomas Ilnseher <illth at gmx.de>




More information about the xorg mailing list