Version 7 changes:
- Changed name to hid-nintendo to fit modern naming conventions
- Removed joycon_ctlr_destroy(), since it wasn't needed an could
potentially invalidate a mutex while it could be in use on other
threads
- Implemented minor code improvements suggested by Silvan
- The driver now waits to send subcommands until after receiving an
input report. This significantly reduces dropped subcommands.
- Reduced the number of error messages when disconnecting a
controller.
Version 6 changes:
- Improved subcommand sending reliabilty
- Decreased rumble period to 50ms
- Added rumble queue to avoid missing ff_effects if sent too quickly
- Code cleanup and minor refactoring
- Added default analog stick calibration
Version 5 changes:
- Removed sysfs interface to control motor frequencies.
- Improved rumble reliability by using subcommands to set it.
- Changed mapping of the SL/SR triggers on the joy-cons to map to
whichever triggers they lack (e.g. a left joycon's sl/sr map to
TR and TR2). This allows userspace to distinguish between the
normal and S triggers.
- Minor refactors
Version 4 changes:
- Added support for the Home button LED for the pro controller and
right joy-con
- Changed name from hid-switchcon to hid-joycon
- Added rumble support
- Removed ctlr->type and use hdev->product instead
- Use POWER_SUPPLY_CAPACITY_LEVEL enum instead of manually translating
to capacity percentages
- Misc. minor refactors based on v3 feedback
Version 3 changes:
- Added led_classdev support for the 4 player LEDs
- Added power_supply support for the controller's battery
- Made the controller number mutex static
- Minor refactoring/style fixes based on Roderick's feedback from v2
Version 2 changes:
- Switched to using a synchronous method for configuring the
controller.
- Removed any pairing/orientation logic in the driver. Every
controller now corresponds to its own input device.
- Store controller button data as a single u32.
- Style corrections
Daniel J. Ogorchock (8):
HID: nintendo: add nintendo switch controller driver
HID: nintendo: add player led support
HID: nintendo: add power supply support
HID: nintendo: add home led support
HID: nintendo: add rumble support
HID: nintendo: improve subcommand reliability
HID: nintendo: send subcommands after receiving input report
HID: nintendo: reduce device removal subcommand errors
MAINTAINERS | 6 +
drivers/hid/Kconfig | 24 +
drivers/hid/Makefile | 1 +
drivers/hid/hid-ids.h | 3 +
drivers/hid/hid-nintendo.c | 1496 ++++++++++++++++++++++++++++++++++++
5 files changed, 1530 insertions(+)
create mode 100644 drivers/hid/hid-nintendo.c
--
2.23.0