Skip to content

Commit 5006c10

Browse files
bentissJiri Kosina
authored andcommitted
Revert "HID: logitech-hidpp: support combo keyboard touchpad TK820"
This reverts commit 3a61e97. The Logitech TK820 seems to be affected by a firmware bug which delays the sending of the keys (pressed, or released, which triggers a key-repeat) while holding fingers on the touch sensor. This behavior can be observed while using the mouse emulation mode if the user moves the finger while typing (highly improbable though). Holding the finger still while in the mouse emulation mode does not trigger the key repeat problem. So better keep things in their previous state to not have to explain users that the new key-repeat bug they see is a "feature". Furthermore, I noticed that I disabled the media keys whith this patch. Sorry, my bad. I think it is best to revert the patch, in all the current versions it has been shipped. Cc: <[email protected]> # v3.19 and above Signed-off-by: Benjamin Tissoires <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
1 parent a7d2bf2 commit 5006c10

File tree

1 file changed

+0
-20
lines changed

1 file changed

+0
-20
lines changed

drivers/hid/hid-logitech-hidpp.c

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ MODULE_PARM_DESC(disable_raw_mode,
4444
/* bits 1..20 are reserved for classes */
4545
#define HIDPP_QUIRK_DELAYED_INIT BIT(21)
4646
#define HIDPP_QUIRK_WTP_PHYSICAL_BUTTONS BIT(22)
47-
#define HIDPP_QUIRK_MULTI_INPUT BIT(23)
4847

4948
/*
5049
* There are two hidpp protocols in use, the first version hidpp10 is known
@@ -706,12 +705,6 @@ static int wtp_input_mapping(struct hid_device *hdev, struct hid_input *hi,
706705
struct hid_field *field, struct hid_usage *usage,
707706
unsigned long **bit, int *max)
708707
{
709-
struct hidpp_device *hidpp = hid_get_drvdata(hdev);
710-
711-
if ((hidpp->quirks & HIDPP_QUIRK_MULTI_INPUT) &&
712-
(field->application == HID_GD_KEYBOARD))
713-
return 0;
714-
715708
return -1;
716709
}
717710

@@ -720,10 +713,6 @@ static void wtp_populate_input(struct hidpp_device *hidpp,
720713
{
721714
struct wtp_data *wd = hidpp->private_data;
722715

723-
if ((hidpp->quirks & HIDPP_QUIRK_MULTI_INPUT) && origin_is_hid_core)
724-
/* this is the generic hid-input call */
725-
return;
726-
727716
__set_bit(EV_ABS, input_dev->evbit);
728717
__set_bit(EV_KEY, input_dev->evbit);
729718
__clear_bit(EV_REL, input_dev->evbit);
@@ -1245,10 +1234,6 @@ static int hidpp_probe(struct hid_device *hdev, const struct hid_device_id *id)
12451234
if (hidpp->quirks & HIDPP_QUIRK_DELAYED_INIT)
12461235
connect_mask &= ~HID_CONNECT_HIDINPUT;
12471236

1248-
/* Re-enable hidinput for multi-input devices */
1249-
if (hidpp->quirks & HIDPP_QUIRK_MULTI_INPUT)
1250-
connect_mask |= HID_CONNECT_HIDINPUT;
1251-
12521237
ret = hid_hw_start(hdev, connect_mask);
12531238
if (ret) {
12541239
hid_err(hdev, "%s:hid_hw_start returned error\n", __func__);
@@ -1296,11 +1281,6 @@ static const struct hid_device_id hidpp_devices[] = {
12961281
HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH,
12971282
USB_DEVICE_ID_LOGITECH_T651),
12981283
.driver_data = HIDPP_QUIRK_CLASS_WTP },
1299-
{ /* Keyboard TK820 */
1300-
HID_DEVICE(BUS_USB, HID_GROUP_LOGITECH_DJ_DEVICE,
1301-
USB_VENDOR_ID_LOGITECH, 0x4102),
1302-
.driver_data = HIDPP_QUIRK_DELAYED_INIT | HIDPP_QUIRK_MULTI_INPUT |
1303-
HIDPP_QUIRK_CLASS_WTP },
13041284

13051285
{ HID_DEVICE(BUS_USB, HID_GROUP_LOGITECH_DJ_DEVICE,
13061286
USB_VENDOR_ID_LOGITECH, HID_ANY_ID)},

0 commit comments

Comments
 (0)