Skip to content

Commit a9d9e46

Browse files
bentissJiri Kosina
authored andcommitted
Revert "HID: logitech-hidpp: Enable HID++ for all the Logitech Bluetooth devices"
This reverts commit 532223c. As reported in [0], hid-logitech-hidpp now binds on all bluetooth mice, but there are corner cases where hid-logitech-hidpp just gives up on the mouse. This leads the end user with a dead mouse. Given that we are at -rc8, we are definitively too late to find a proper fix. We already identified 2 issues less than 24 hours after the bug report. One in that ->match() was never designed to be used anywhere else than in hid-generic, and the other that hid-logitech-hidpp has corner cases where it gives up on devices it is not supposed to. So we have no choice but postpone this patch to the next kernel release. [0] https://lore.kernel.org/linux-input/CAJZ5v0g-_o4AqMgNwihCb0jrwrcJZfRrX=jv8aH54WNKO7QB8A@mail.gmail.com/ Reported-by: Rafael J . Wysocki <[email protected]> Signed-off-by: Benjamin Tissoires <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
1 parent 40f2432 commit a9d9e46

File tree

1 file changed

+0
-19
lines changed

1 file changed

+0
-19
lines changed

drivers/hid/hid-logitech-hidpp.c

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4269,21 +4269,6 @@ static void hidpp_remove(struct hid_device *hdev)
42694269
mutex_destroy(&hidpp->send_mutex);
42704270
}
42714271

4272-
static const struct hid_device_id unhandled_hidpp_devices[] = {
4273-
/* Logitech Harmony Adapter for PS3, handled in hid-sony */
4274-
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_HARMONY_PS3) },
4275-
/* Handled in hid-generic */
4276-
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_DINOVO_EDGE_KBD) },
4277-
{}
4278-
};
4279-
4280-
static bool hidpp_match(struct hid_device *hdev,
4281-
bool ignore_special_driver)
4282-
{
4283-
/* Refuse to handle devices handled by other HID drivers */
4284-
return !hid_match_id(hdev, unhandled_hidpp_devices);
4285-
}
4286-
42874272
#define LDJ_DEVICE(product) \
42884273
HID_DEVICE(BUS_USB, HID_GROUP_LOGITECH_DJ_DEVICE, \
42894274
USB_VENDOR_ID_LOGITECH, (product))
@@ -4376,9 +4361,6 @@ static const struct hid_device_id hidpp_devices[] = {
43764361
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, 0xb01e) },
43774362
{ /* MX Master 3 mouse over Bluetooth */
43784363
HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LOGITECH, 0xb023) },
4379-
4380-
{ /* And try to enable HID++ for all the Logitech Bluetooth devices */
4381-
HID_DEVICE(BUS_BLUETOOTH, HID_GROUP_ANY, USB_VENDOR_ID_LOGITECH, HID_ANY_ID) },
43824364
{}
43834365
};
43844366

@@ -4392,7 +4374,6 @@ static const struct hid_usage_id hidpp_usages[] = {
43924374
static struct hid_driver hidpp_driver = {
43934375
.name = "logitech-hidpp-device",
43944376
.id_table = hidpp_devices,
4395-
.match = hidpp_match,
43964377
.report_fixup = hidpp_report_fixup,
43974378
.probe = hidpp_probe,
43984379
.remove = hidpp_remove,

0 commit comments

Comments
 (0)