Comment 27 for bug 929694

Revision history for this message
Ingo Ruhnke (grumbel) wrote :

Attached are above code changes as patch.

A more detailed summary of the problem:

USB gamepads will get assigned event ids starting from BTN_GAMEPAD (/usr/include/linux/input.h) and then increment with each button. If the gamepad has 16 buttons or more, it will reach the button id BTN_DIGI and beyond. The problem is that BTN_DIGI is reserved for tablet use and used by the joydev module (linux-source-3.0.0/drivers/input/joydev.c) to determine what devices are not joysticks/gamepads. Thus a gamepad with more then 16 buttons will not be detected as joystick by the joydev module and not get an /dev/input/js0.

This problem is a side-effect of an earlier bug fix that was needed so graphic tablets don't show up as joysticks:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/300143

PS: The above logs are useless, but were requested by the auto-reply.