[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210502232836.26134-1-linkmauve@linkmauve.fr>
Date: Mon, 3 May 2021 01:28:31 +0200
From: Emmanuel Gil Peyrot <linkmauve@...kmauve.fr>
To: linux-input@...r.kernel.org
Cc: Emmanuel Gil Peyrot <linkmauve@...kmauve.fr>,
Ash Logan <ash@...quark.com>,
Jonathan Neuschäfer <j.ne@...teo.net>,
Jiri Kosina <jikos@...nel.org>,
Benjamin Tissoires <benjamin.tissoires@...hat.com>,
linux-kernel@...r.kernel.org
Subject: [PATCH 0/4] RFC: HID: wiiu-drc: Add a driver for the Wii U gamepad
This driver is for the DRC (wireless gamepad) when plugged to the DRH of
the Wii U, a chip exposing it as a USB device.
I tried to use this driver on master over usbip on my laptop, but usbip
disconnects the device right after the driver created the
/dev/input/event* files, so instead I have only tested this driver on
the 4.19 branch of the linux-wiiu[1] downstream.
Other than that, pretty much all of the HID parts of the gamepad work,
it’s only missing microphone, camera and NFC input now but those are
mostly standard (read require quirks) and pertain to other subsystems,
so I felt like this can be upstreamed already.
I’ve still put the RFC tag on this pull request because of two known
problems in these patches (annotated with TODOs in the code):
- The magnetometer is exposed using non-sensical ABS_* values, it seems
most (all?) magnetometers are exposed in the iio subsystem instead,
should I go the same way despite it clearly being part of the same HID
device?
- The battery number is currently based on a static int being
incremented every time a new gamepad is “plugged in”, while I’d prefer
to reuse the interface number for that.
Thanks for your guidance. :)
[1] https://gitlab.com/linux-wiiu/linux-wiiu
Ash Logan (1):
HID: wiiu-drc: Add a driver for this gamepad
Emmanuel Gil Peyrot (3):
HID: wiiu-drc: Implement touch reports
HID: wiiu-drc: Add accelerometer, gyroscope and magnetometer readings
HID: wiiu-drc: Add battery reporting
drivers/hid/Kconfig | 7 +
drivers/hid/Makefile | 1 +
drivers/hid/hid-ids.h | 1 +
drivers/hid/hid-quirks.c | 3 +
drivers/hid/hid-wiiu-drc.c | 522 +++++++++++++++++++++++++++++++++++++
5 files changed, 534 insertions(+)
create mode 100644 drivers/hid/hid-wiiu-drc.c
--
2.31.1
Powered by blists - more mailing lists