]> git.itanic.dy.fi Git - linux-stable/commit
HID: logitech-hidpp: Move get_wireless_feature_index() check to hidpp_connect_event()
authorHans de Goede <hdegoede@redhat.com>
Tue, 10 Oct 2023 10:20:20 +0000 (12:20 +0200)
committerBenjamin Tissoires <bentiss@kernel.org>
Wed, 25 Oct 2023 16:40:50 +0000 (18:40 +0200)
commitba9de350509504fb748837b71e23d7e84c83d93c
tree54288a66a63ff9deb8ed43d4861f4b8835b26e73
parent55bf70362ffc4ddd7c8745e2fe880edac00e4aff
HID: logitech-hidpp: Move get_wireless_feature_index() check to hidpp_connect_event()

Calling get_wireless_feature_index() from probe() causes
the wireless_feature_index to only get set for unifying devices which
are already connected at probe() time. It does not get set for devices
which connect later.

Fix this by moving get_wireless_feature_index() to hidpp_connect_event(),
this does not make a difference for devices connected at probe() since
probe() will queue the hidpp_connect_event() for those at probe time.

This series has been tested on the following devices:
Logitech Bluetooth Laser Travel Mouse (bluetooth, HID++ 1.0)
Logitech M720 Triathlon (bluetooth, HID++ 4.5)
Logitech M720 Triathlon (unifying, HID++ 4.5)
Logitech K400 Pro (unifying, HID++ 4.1)
Logitech K270 (eQUAD nano Lite, HID++ 2.0)
Logitech M185 (eQUAD nano Lite, HID++ 4.5)
Logitech LX501 keyboard (27 Mhz, HID++ builtin scroll-wheel, HID++ 1.0)
Logitech M-RAZ105 mouse (27 Mhz, HID++ extra mouse buttons, HID++ 1.0)

And by bentiss:
Logitech Touchpad T650 (unifying)
Logitech Touchpad T651 (bluetooth)
Logitech MX Master 3B (BLE)
Logitech G403 (plain USB / Gaming receiver)

Fixes: 0da0a63b7cba ("HID: logitech-hidpp: Support WirelessDeviceStatus connect events")
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20231010102029.111003-4-hdegoede@redhat.com
Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
drivers/hid/hid-logitech-hidpp.c