Skip to content

Commit 7c26e09

Browse files
committed
HID: plantronics: Additional PIDs for double volume key presses quirk
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2122844 Upstream Status: since v6.0.17 Tested: with the hid-tools test suite and some hardware commit 3c51745 Author: Terry Junge <linuxhid@cosmicgizmosystems.com> Date: Thu Dec 8 15:05:06 2022 -0800 HID: plantronics: Additional PIDs for double volume key presses quirk [ Upstream commit 3d57f36 ] I no longer work for Plantronics (aka Poly, aka HP) and do not have access to the headsets in order to test. However, as noted by Maxim, the other 32xx models that share the same base code set as the 3220 would need the same quirk. This patch adds the PIDs for the rest of the Blackwire 32XX product family that require the quirk. Plantronics Blackwire 3210 Series (047f:c055) Plantronics Blackwire 3215 Series (047f:c057) Plantronics Blackwire 3225 Series (047f:c058) Quote from previous patch by Maxim Mikityanskiy Plantronics Blackwire 3220 Series (047f:c056) sends HID reports twice for each volume key press. This patch adds a quirk to hid-plantronics for this product ID, which will ignore the second volume key press if it happens within 5 ms from the last one that was handled. The patch was tested on the mentioned model only, it shouldn't affect other models, however, this quirk might be needed for them too. Auto-repeat (when a key is held pressed) is not affected, because the rate is about 3 times per second, which is far less frequent than once in 5 ms. End quote Signed-off-by: Terry Junge <linuxhid@cosmicgizmosystems.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: Sasha Levin <sashal@kernel.org> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
1 parent e97f888 commit 7c26e09

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

drivers/hid/hid-ids.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -995,7 +995,10 @@
995995
#define USB_DEVICE_ID_ORTEK_IHOME_IMAC_A210S 0x8003
996996

997997
#define USB_VENDOR_ID_PLANTRONICS 0x047f
998+
#define USB_DEVICE_ID_PLANTRONICS_BLACKWIRE_3210_SERIES 0xc055
998999
#define USB_DEVICE_ID_PLANTRONICS_BLACKWIRE_3220_SERIES 0xc056
1000+
#define USB_DEVICE_ID_PLANTRONICS_BLACKWIRE_3215_SERIES 0xc057
1001+
#define USB_DEVICE_ID_PLANTRONICS_BLACKWIRE_3225_SERIES 0xc058
9991002

10001003
#define USB_VENDOR_ID_PANASONIC 0x04da
10011004
#define USB_DEVICE_ID_PANABOARD_UBT780 0x1044

drivers/hid/hid-plantronics.c

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,9 +198,18 @@ static int plantronics_probe(struct hid_device *hdev,
198198
}
199199

200200
static const struct hid_device_id plantronics_devices[] = {
201+
{ HID_USB_DEVICE(USB_VENDOR_ID_PLANTRONICS,
202+
USB_DEVICE_ID_PLANTRONICS_BLACKWIRE_3210_SERIES),
203+
.driver_data = PLT_QUIRK_DOUBLE_VOLUME_KEYS },
201204
{ HID_USB_DEVICE(USB_VENDOR_ID_PLANTRONICS,
202205
USB_DEVICE_ID_PLANTRONICS_BLACKWIRE_3220_SERIES),
203206
.driver_data = PLT_QUIRK_DOUBLE_VOLUME_KEYS },
207+
{ HID_USB_DEVICE(USB_VENDOR_ID_PLANTRONICS,
208+
USB_DEVICE_ID_PLANTRONICS_BLACKWIRE_3215_SERIES),
209+
.driver_data = PLT_QUIRK_DOUBLE_VOLUME_KEYS },
210+
{ HID_USB_DEVICE(USB_VENDOR_ID_PLANTRONICS,
211+
USB_DEVICE_ID_PLANTRONICS_BLACKWIRE_3225_SERIES),
212+
.driver_data = PLT_QUIRK_DOUBLE_VOLUME_KEYS },
204213
{ HID_USB_DEVICE(USB_VENDOR_ID_PLANTRONICS, HID_ANY_ID) },
205214
{ }
206215
};

0 commit comments

Comments
 (0)