Linux Input/HID development
 help / color / mirror / Atom feed
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Gideon Heinz <gideonheinz02@gmail.com>
Cc: linux-input@vger.kernel.org, jkosina@suse.com, bentiss@kernel.org
Subject: Re: HID: logitech-hidpp: G920 FF init fails with -110 since "move FF initialization to .input_configured()"
Date: Mon, 02 Nov 2026 09:37:17 -0800	[thread overview]
Message-ID: <f37327374f65a93439c6cf0c6287a820@gmail.com> (raw)
In-Reply-To: <CAPb1+K1-pirdLGZ1wTUw26G6pvhg7rGP3QZ172ys5DB7rNCf5w@mail.gmail.com>

Hi Gideon,

On Mon, Nov 02, 2026 at 02:23:18PM +0100, Gideon Heinz wrote:
> This looks like a regression from commit
> 544315e401727364f7ce3ba771a36f7dc24ba6c4 ("HID:
> logitech-hidpp: move FF initialization to .input_configured()",
> 2026-08-14). It moves g920_get_config()/hidpp_ff_init() from
> hidpp_probe(), where they ran after schedule_work()/flush_work() of the
> connect event, into hidpp_input_configured(), which is called from
> hid_hw_start() before that work runs. That matches the capture: the
> wheel answers the 0x8123 lookup normally, the driver doesn't act on the
> reply and gives up after 3 tries with -ETIMEDOUT. I haven't tested a
> revert. Happy to test patches.

Thank you for the report and the usbmon captures.

The issue is that hidpp_probe() calls hid_device_io_stop() right before
hid_connect(), so incoming HID reports are dropped with -EBUSY while
hidpp_input_configured() runs g920_get_config(). Re-enabling I/O around
g920_get_config() (matching what hid-pidff and hid-haptic do during
hid_connect()) should fix it.

Could you please give the patch below a try and let me know if it
resolves the issue?

Thanks.

diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
index 9646380febac..6b1f55483385 100644
--- a/drivers/hid/hid-logitech-hidpp.c
+++ b/drivers/hid/hid-logitech-hidpp.c
@@ -4098,7 +4098,9 @@ static int hidpp_input_configured(struct hid_device *hdev, struct hid_input *hid
 		if (!list_is_first(&hidinput->list, &hdev->inputs))
 			return 0;
 
+		hid_device_io_start(hdev);
 		ret = g920_get_config(hidpp, &data);
+		hid_device_io_stop(hdev);
 		if (!ret)
 			ret = hidpp_ff_init(hidpp, &data);
 

-- 
Dmitry

  reply	other threads:[~2026-11-02 17:37 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-02 13:23 HID: logitech-hidpp: G920 FF init fails with -110 since "move FF initialization to .input_configured()" Gideon Heinz
2026-11-02 17:37 ` Dmitry Torokhov [this message]
     [not found]   ` <CAPb1+K0aFMox4-FTjODmOSN7iHDXfFGq-2jGfQyXcp+X_rNioA@mail.gmail.com>
2026-11-05 19:17     ` Dmitry Torokhov
     [not found]       ` <CAPb1+K3ca9HdcNxF+sckhL7-Ud11k5E+1vxmzsVK=h4srC3A4A@mail.gmail.com>
2026-11-09  6:10         ` Dmitry Torokhov

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=f37327374f65a93439c6cf0c6287a820@gmail.com \
    --to=dmitry.torokhov@gmail.com \
    --cc=bentiss@kernel.org \
    --cc=gideonheinz02@gmail.com \
    --cc=jkosina@suse.com \
    --cc=linux-input@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