J'ai un gamepad Ipega PG-9025, c'est un gamepad bluetooth pour téléphone portable mais j'aimerais aussi l'utiliser avec mon PC. Il possède plusieurs mode de fonctionnement dont deux qui m'intéressent : mode gamepad et mode clavier.
Cela marchait il y a quelques temps (Fedora 20, je sais plus quelle version du noyau). Mais maintenant (Fedora 21, linux 3.18) le mode gamepad ne fournit plus aucun évènement et en mode clavier seules certains boutons marchent et donne des codes différents du fonctionnement précédent.
Le problème semble venir d'une confusion au niveau du pilote, le gamepad donne comme code vendeur:produit 05AC:022C ce qui correspond à un produit Apple (APPLE_ALU_WIRELESS_ANSI d'après hid-ids.h).
journalctl me donne :
kernel: apple 0005:05AC:022C.0002: unknown main item tag 0x0
kernel: input: ipega media gamepad controller as /devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1.3/3-1.3:1.0/bluetooth/hci0/hci0:34/0005:05AC:022C.0002/input/input20
kernel: apple 0005:05AC:022C.0002: input,hidraw0: BLUETOOTH HID v1.1b Keyboard [ipega media gamepad controller] on 84:a6:c8:0b:6d:a9
J'imagine que le constructeur s'est cru malin en se faisant passer pour un produit pour la compatibilité avec iOS mais une amélioration récente du support du matériel Apple dans le noyau a tout cassé.
Je ne sais pas trop comment forcer l'usage d'un pilote générique. J'avais pensé à blacklister un module mais je ne vois aucune référence à apple avec lsmod.