]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.19-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 11 Dec 2018 15:16:21 +0000 (16:16 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 11 Dec 2018 15:16:21 +0000 (16:16 +0100)
added patches:
hid-quirks-fix-retrousb.com-devices.patch

queue-4.19/hid-quirks-fix-retrousb.com-devices.patch [new file with mode: 0644]
queue-4.19/series

diff --git a/queue-4.19/hid-quirks-fix-retrousb.com-devices.patch b/queue-4.19/hid-quirks-fix-retrousb.com-devices.patch
new file mode 100644 (file)
index 0000000..5d83dee
--- /dev/null
@@ -0,0 +1,63 @@
+From 868613f1c0ccf7b832f38b48b18cca31cdeb3d26 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Nic=20Soud=C3=A9e?= <nsoudee@gmail.com>
+Date: Thu, 6 Dec 2018 11:59:25 -0500
+Subject: HID: quirks: fix RetroUSB.com devices
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Nic Soudée <nsoudee@gmail.com>
+
+commit 868613f1c0ccf7b832f38b48b18cca31cdeb3d26 upstream.
+
+SNES RetroPort and RetroPad register only 4 gamepad buttons
+when they should register all 8 buttons. This is described here:
+
+https://ask.fedoraproject.org/en/question/128102
+
+This is happening because of:
+
+Commit 190d7f02ce8e ("HID: input: do not increment usages when
+    duplicate is found")
+
+Here, I add the quirk HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE
+(created for backward compatibility with the change in 190d7f02ce8e)
+for the two products.
+
+Tested with both RetroPort and RetroPad.
+
+Cc: stable@vger.kernel.org  # v4.18+
+
+Signed-off-by: Nic Soudée <nsoudee@gmail.com>
+Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/hid/hid-ids.h    |    4 ++++
+ drivers/hid/hid-quirks.c |    2 ++
+ 2 files changed, 6 insertions(+)
+
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -934,6 +934,10 @@
+ #define USB_VENDOR_ID_REALTEK         0x0bda
+ #define USB_DEVICE_ID_REALTEK_READER  0x0152
++#define USB_VENDOR_ID_RETROUSB                0xf000
++#define USB_DEVICE_ID_RETROUSB_SNES_RETROPAD  0x0003
++#define USB_DEVICE_ID_RETROUSB_SNES_RETROPORT 0x00f1
++
+ #define USB_VENDOR_ID_ROCCAT          0x1e7d
+ #define USB_DEVICE_ID_ROCCAT_ARVO     0x30d4
+ #define USB_DEVICE_ID_ROCCAT_ISKU     0x319c
+--- a/drivers/hid/hid-quirks.c
++++ b/drivers/hid/hid-quirks.c
+@@ -136,6 +136,8 @@ static const struct hid_device_id hid_qu
+       { HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3003), HID_QUIRK_NOGET },
+       { HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3008), HID_QUIRK_NOGET },
+       { HID_USB_DEVICE(USB_VENDOR_ID_REALTEK, USB_DEVICE_ID_REALTEK_READER), HID_QUIRK_NO_INIT_REPORTS },
++      { HID_USB_DEVICE(USB_VENDOR_ID_RETROUSB, USB_DEVICE_ID_RETROUSB_SNES_RETROPAD), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE },
++      { HID_USB_DEVICE(USB_VENDOR_ID_RETROUSB, USB_DEVICE_ID_RETROUSB_SNES_RETROPORT), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE },
+       { HID_USB_DEVICE(USB_VENDOR_ID_SAITEK, USB_DEVICE_ID_SAITEK_RUMBLEPAD), HID_QUIRK_BADPAD },
+       { HID_USB_DEVICE(USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD2), HID_QUIRK_NO_INIT_REPORTS },
+       { HID_USB_DEVICE(USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD), HID_QUIRK_NO_INIT_REPORTS },
index c01e56effaaf8ad822a0e868b256bf1b6c3d4f6f..3b06d292ae39242a7280230c7cdaed250454cbfd 100644 (file)
@@ -115,3 +115,4 @@ mac80211-clear-beacon_int-in-ieee80211_do_stop.patch
 mac80211-ignore-tx-status-for-ps-stations-in-ieee80211_tx_status_ext.patch
 mac80211-fix-reordering-of-buffered-broadcast-packets.patch
 mac80211-ignore-nullfunc-frames-in-the-duplicate-detection.patch
+hid-quirks-fix-retrousb.com-devices.patch