• Clement Calmels's avatar
    Input: xpad - remove spurious events of wireless xpad 360 controller · bec36000
    Clement Calmels authored
    [ Upstream commit 93a017aa ]
    
    When powering up a wireless xbox 360 controller, some wrong joystick
    events are generated. It is annoying because, for example, it makes
    unwanted moves in Steam big picture mode's menu.
    
    When my controller is powering up, this packet is received by the
    driver:
    00000000: 00 0f 00 f0 00 cc ff cf 8b e0 86 6a 68 f0 00 20  ...........jh..
    00000010: 13 e3 20 1d 30 03 40 01 50 01 ff ff              .. .0.@.P...
    
    According to xboxdrv userspace driver source code, this packet is only
    dumping a serial id and should not be interpreted as joystick events.
    This issue can be easily seen with jstest:
    $ jstest --event /dev/input/js0
    
    This patch only adds a way to filter out this "serial" packet and as a
    result it removes the spurous events.
    Signed-off-by: default avatarClement Calmels <clement.calmels@free.fr>
    Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
    Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
    bec36000
xpad.c 44.5 KB