Joysticks/joypads/etc information needed for Ubuntu 8.10 Intrepid Ibex and later

Timo Aaltonen tjaalton at cc.hut.fi
Tue Oct 21 07:21:16 UTC 2008


On Mon, 20 Oct 2008, Loïc Martin wrote:

> Hi,
>
> Stating with Ubuntu 8.10 Intrepid Ibex and due to changes in Xorg, each
> model of joystick needs a special file to be recognised properly. For
> the moment 8.10 doesn't ship with these files, and thus your joystick
> shouldn't be working anymore (instead, it should move the mouse cursor,
> sometimes preventing the use of the mouse until you unplug the joystick).

No, we don't need that. The reason why it moves the mouse cursor is that 
the evdev driver picks it up, and the situation would be exactly the same 
if xserver-xorg-input-joystick would pick up the device (that's what the 
driver is used for, a fact that I admit having missed earlier.. ahem).

The problem here is that HAL doesn't know that the joystick you plug in is 
a joystick, instead it thinks it is a mouse (and/or a keyboard). That's 
why the evdev driver picks it up and all attempts to use /dev/input/js? 
fails. The correct fix would be to fix hal/kernel to know that it really 
is a joystick, and blacklist evdev for such devices. Then you should be 
able to use the joystick just like before input-hotplug.

Why wasn't this discovered earlier? The first bug regarding joysticks was 
filed on Sep 20th (bug 272421 [1]), and it took a while to fix the crasher 
for good. Input-hotplug had been in use for nearly two months by then, and 
there simply was not enough time to fix it properly after the crasher was 
fixed.

You have the workaround, which is to disable loading evdev for the 
joystick locally. That should do for Intrepid. Disabling AutoAddDevices 
is another way, but then you disable i-h for every input driver and it 
shouldn't be encouraged on the forums or elsewhere..



t




More information about the Ubuntu-devel-discuss mailing list