mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Mark Pariente <markpariente@gmail.com>
To: Jiri Kosina <jikos@kernel.org>, Benjamin Tissoires <bentiss@kernel.org>
Cc: "Filipe Laíns" <lains@riseup.net>,
	linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
	stable@vger.kernel.org, "Mark Pariente" <markpariente@gmail.com>
Subject: [PATCH v2 0/2] HID: logitech-dj: Restore device configuration after reset-resume
Date: Sun, 18 Oct 2026 16:26:52 -0700	[thread overview]
Message-ID: <20261018232654.70571-1-markpariente@gmail.com> (raw)
In-Reply-To: <20261018224627.60328-1-markpariente@gmail.com>

When a Unifying receiver is reset on resume, for example because a USB
KVM switch moved it to another host while the system was suspended,
devices that reconnected in the meantime lose their configuration. The
most visible case is HID++ hi-res scrolling, which leaves the wheel
about 15x slower. Patch 2 has the receiver re-announce its connected
devices on reset-resume so that hidpp reconfigures them.

Sashiko pointed out that on Unifying receivers the re-announce can also
hit slots without a known device, and that HID++ connect notifications
then add those devices with an incomplete report descriptor. That can
already happen today, e.g. when Solaar sends the same request on
startup, so patch 1 fixes it separately: on Unifying receivers, unknown
slots are enumerated through DJ notifications instead.

Changes in v2:
- New patch 1/2: don't add devices from HID++ connect notifications on
  Unifying receivers (reported by Sashiko).
- Patch 2/2: code unchanged; the commit message notes the dependency
  on 1/2.
- v1: https://lore.kernel.org/linux-input/20261018224627.60328-1-markpariente@gmail.com/

Testing:
- Both patches applied to the v7.2 driver and loaded as an out-of-tree
  module on Fedora's 7.2.11 kernel, with an MX Master 3 on a Unifying
  receiver (046d:c52b) behind a USB KVM switch. Devices enumerate
  normally, and hi-res scrolling is restored after the reset-resume
  reproducer described in patch 2.
- The unknown-slot case fixed by patch 1 could not be reproduced here,
  because this KVM switch fully disconnects the receiver, so it was
  verified by code inspection only.
- Lightspeed, Nano and 27 MHz receivers were not tested; patch 1 does
  not change their behaviour, and patch 2 sends them the request
  logi_dj_recv_query_paired_devices() already uses for them.
- The investigation, patches and changelogs were drafted with an LLM
  coding assistant, then reviewed and tested by me.

Mark Pariente (2):
  HID: logitech-dj: Don't add Unifying devices from HID++ notifications
  HID: logitech-dj: Re-announce connected devices on reset-resume

 drivers/hid/hid-logitech-dj.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)


base-commit: ae6927c533a4454570950125ca8ba909c45f20f9
-- 
2.56.0


  reply	other threads:[~2026-10-18 23:27 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-18 22:46 [PATCH] HID: logitech-dj: Re-announce connected devices on reset-resume Mark Pariente
2026-10-18 23:26 ` Mark Pariente [this message]
2026-10-18 23:26   ` [PATCH v2 1/2] HID: logitech-dj: Don't add Unifying devices from HID++ notifications Mark Pariente
2026-10-18 23:26   ` [PATCH v2 2/2] HID: logitech-dj: Re-announce connected devices on reset-resume Mark Pariente

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261018232654.70571-1-markpariente@gmail.com \
    --to=markpariente@gmail.com \
    --cc=bentiss@kernel.org \
    --cc=jikos@kernel.org \
    --cc=lains@riseup.net \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®