diff --git a/patches.suse/HID-logitech-hidpp-Reconcile-USB-and-Unifying-serial.patch b/patches.suse/HID-logitech-hidpp-Reconcile-USB-and-Unifying-serial.patch new file mode 100644 index 0000000..b03009a --- /dev/null +++ b/patches.suse/HID-logitech-hidpp-Reconcile-USB-and-Unifying-serial.patch @@ -0,0 +1,55 @@ +From 5b3691d15e04b6d5a32c915577b8dbc5cfb56382 Mon Sep 17 00:00:00 2001 +From: Bastien Nocera +Date: Thu, 2 Mar 2023 14:01:17 +0100 +Subject: [PATCH] HID: logitech-hidpp: Reconcile USB and Unifying serials +Git-commit: 5b3691d15e04b6d5a32c915577b8dbc5cfb56382 +Patch-mainline: v6.4-rc1 +References: git-fixes + +Now that USB HID++ devices can gather a serial number that matches the +one that would be gathered when connected through a Unifying receiver, +remove the last difference by dropping the product ID as devices +usually have different product IDs when connected through USB or +Unifying. + +For example, on the serials on a G903 wired/wireless mouse: +- Unifying before patch: 4067-e8-ce-cd-45 +- USB before patch: c086-e8-ce-cd-45 +- Unifying and USB after patch: e8-ce-cd-45 + +Signed-off-by: Bastien Nocera +Link: https://lore.kernel.org/r/20230302130117.3975-2-hadess@hadess.net +Signed-off-by: Benjamin Tissoires +Acked-by: Takashi Iwai + +--- + drivers/hid/hid-logitech-hidpp.c | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c +index 66380876937f..da89e84c9cbe 100644 +--- a/drivers/hid/hid-logitech-hidpp.c ++++ b/drivers/hid/hid-logitech-hidpp.c +@@ -853,8 +853,7 @@ static int hidpp_unifying_init(struct hidpp_device *hidpp) + if (ret) + return ret; + +- snprintf(hdev->uniq, sizeof(hdev->uniq), "%04x-%4phD", +- hdev->product, &serial); ++ snprintf(hdev->uniq, sizeof(hdev->uniq), "%4phD", &serial); + dbg_hid("HID++ Unifying: Got serial: %s\n", hdev->uniq); + + name = hidpp_unifying_get_name(hidpp); +@@ -989,8 +988,7 @@ static int hidpp_serial_init(struct hidpp_device *hidpp) + if (ret) + return ret; + +- snprintf(hdev->uniq, sizeof(hdev->uniq), "%04x-%4phD", +- hdev->product, &serial); ++ snprintf(hdev->uniq, sizeof(hdev->uniq), "%4phD", &serial); + dbg_hid("HID++ DeviceInformation: Got serial: %s\n", hdev->uniq); + + return 0; +-- +2.35.3 + diff --git a/series.conf b/series.conf index 52f2f18..15686f0 100644 --- a/series.conf +++ b/series.conf @@ -19963,6 +19963,7 @@ patches.suse/ipmi-fix-SSIF-not-responding-under-certain-cond.patch patches.suse/i2c-cadence-cdns_i2c_master_xfer-Fix-runtime-PM-leak.patch patches.suse/HID-logitech-hidpp-Don-t-use-the-USB-serial-for-USB-.patch + patches.suse/HID-logitech-hidpp-Reconcile-USB-and-Unifying-serial.patch patches.suse/HID-wacom-Set-a-default-resolution-for-older-tablets.patch patches.suse/usb-host-xhci-rcar-remove-leftover-quirk-handling.patch patches.suse/usb-dwc3-gadget-Change-condition-for-processing-susp.patch