Skip to content

Extend the joystick detection#6170

Merged
poettering merged 2 commits intosystemd:masterfrom
whot:master
Jun 22, 2017
Merged

Extend the joystick detection#6170
poettering merged 2 commits intosystemd:masterfrom
whot:master

Conversation

@whot
Copy link
Contributor

@whot whot commented Jun 21, 2017

Anything with BTN_TRIGGER_HAPPY should be a joystick, because that's a specific range for joystick buttons.

The more controversial bit is to make anything with joystick buttons or axes as joysticks, even when they don't have ABS_X/ABS_Y. This shouldn't break anything because the ID_INPUT_JOYSTICK tag is added to the tags, nothing is removed. And I can't think of a device that has these axes but no x/y and didn't get already tagged anyway.

#6137

whot added 2 commits June 22, 2017 09:19
These buttons were added specifically for joysticks with lots of buttons, no
other device should be using them. See kernel commit
cf2f765f18960 "HID: handle joysticks with large number of buttons"

We only test for BTN_TRIGGER_HAPPY (an alias for BTN_TRIGGER_HAPPY1) here, a
device that sets buttons 2 and above but doesn't set 1 is considered buggy.

systemd#6137

Signed-off-by: Peter Hutterer <[email protected]>
Even when they don't have an x/y axis.

systemd#6137

Signed-off-by: Peter Hutterer <[email protected]>
@whot whot self-assigned this Jun 21, 2017
* rudders/pedals are joystick-like, but buttonless; they have
* other fancy axes */
has_joystick_axes_or_buttons = test_bit(BTN_TRIGGER, bitmask_key) ||
test_bit(BTN_TRIGGER_HAPPY, bitmask_key) ||
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sounds like a test we should eventually turn into some constant array and for loop...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

2 participants