On Sat, 2024-04-13 at 10:52 +0200, Allan Sandfeld Jensen wrote: > On Saturday 13 April 2024 10:33:29 CEST Filipe Laíns wrote: > > On Sat, 2024-04-13 at 10:20 +0200, Allan Sandfeld Jensen wrote: > > > On Friday 12 April 2024 21:53:31 CEST Filipe Laíns wrote: > > > > On Fri, 2024-04-12 at 11:10 +0200, Allan Sandfeld Jensen wrote: > > > > > Hello, > > > > > > > > > > I am writing because you are listed as author of the hid-logitech-dj > > > > > driver. I recently bought a Logitech Anywhere 3SB mouse, and found > > > > > Linux > > > > > didn't recognize it. Thinking it was a simple case of new IDs not > > > > > recognized, I quickly added them to the logitch HID++ drivers (patch > > > > > attached), both for USB with the new receiver and for the Bluetooth > > > > > direct connection. > > > > > > > > > > I have noticed however that the patch while causing them to be > > > > > recognized > > > > > and interacted with as HID++ devices, it has a flaw. The scroll wheel > > > > > events are reported by the linux kernel as being in hires mode, while > > > > > haven't actually enabled it on the mouse. You can fix that using > > > > > Solaar, > > > > > but some piece is missing to enable it correctly in the driver. Since > > > > > this is no longer a trivial fix. I wanted to reach out. Do you have > > > > > any > > > > > suggestions? > > > > > > > > > > Best regards > > > > > Allan > > > > > > > > Hi Allan, > > > > > > > > Thank you for reaching out. > > > > > > > > What likely is happening here is Solaar overwriting the configuration > > > > that > > > > the kernel driver sets, as that would happen after the driver talks to > > > > the > > > > device. > > > > > > > > The settings in question need support in both the kernel and the > > > > userspace > > > > input stack (libinput) for them to work appropriately, it's not like > > > > configuring RGB or other sort setting on the device that works > > > > standalone. > > > > > > We already have the support in the kernel and libinput. That is why I am > > > expanding it to recognize this new device id.(?) > > > > Yes, that sounds right. > > > > > > I have, multiple times now, asked for Solaar to not expose these low > > > > level > > > > settings that need support from other parts of the input stack, leaving > > > > them to the kernel to configure. > > > > I have been inactive in the Solaar project for quite some time now, so I > > > > don't feel like yet again make a big deal out of this there, so that > > > > this > > > > decision is reconsidered. I have already spent a significant amount of > > > > effort there, and nowadays I barely have energy to go through my day and > > > > deal with my all my responsibilities and other OSS project involvements, > > > > so > > > > I sadly have no more energy to spare there. > > > > > > > > My recommendation is: disable Solaar from running at startup, restart > > > > the > > > > system, and see if that solves your problem. If it does, report this > > > > issue > > > > again to the Solaar upstream, then depending on that outcome, make a > > > > decision on how to proceed. It may be that setting the high-resolution > > > > settings in Solaar, which are expected by the driver, works, but it > > > > might > > > > not be super reliable, because since Solaar is overwriting the settings > > > > configured by the kernel driver, if anything in the kernel driver > > > > changes, > > > > then the setting you have configured in Solaar might no longer be > > > > correct. > > > > There are alternatives to Solaar that do not have this issue, like > > > > libratbag, but these generally are feature lacking on the productivity > > > > line > > > > of Logitech projects. > > > > > > > > Sorry I wasn't able to help much, but I hope that this clarifies things > > > > a > > > > bit, and helps you solve your problem. > > > > > > Thanks. You are right, it works with solaar uninstalled, I only installed > > > it to check the details of a device not recognized by the kernel. > > > > > > So the patch as send to you before is then upstreamable. Is there anything > > > more I need to do, to facilitate the upstreaming? > > > > > > Best regards > > > Allan > > > > Great to hear! > > > > The patch you sent seems pretty good for upstreaming, I would maybe just > > split the Makefile changes into a separate patch and submit those > > separately, if that's something you actually want to upstream. > > Additionally, it seems to me like the mouse can work wired, so I would also > > add the USB PID of the wired connection to the hidpp driver, that way > > everything should work as expected on all interfaces. > > > Right. I thought I had remove those changes. I had the weirdest issue when > building the kernel, where echo wouldn't terminate. It worked when I replaced > echo with another command, so I ended up using perl -e print. Still no idea, I > assume some interaction between my shell and the combination of quiet and echo > in a Makefile, but it doesnt matter, not part of the patch. > > It doesn't seem like the mouse communicates over the USB cable, only draws > power. This appears consistent with my old Anywhere 2S mouse. > > So where should I send the patch now? It has been at least 15 years since I > contributed anything to the kernel, and I understand sending patches to the > central mailing list is frowned upon now. Do you take if from here, or do I > need to send it to a submodule maintainer above you? > > Best regards > Allan > The standard practice is to run scripts/get_maintainer.pl to find the recipients. In your case: $ scripts/get_maintainer.pl drivers/hid/hid-logitech-hidpp.c "Filipe Laíns" <lains@xxxxxxxxxx> (reviewer:HID LOGITECH DRIVERS) Bastien Nocera <hadess@xxxxxxxxxx> (reviewer:HID++ LOGITECH DRIVERS) Jiri Kosina <jikos@xxxxxxxxxx> (maintainer:HID CORE LAYER) Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx> (maintainer:HID CORE LAYER) linux-input@xxxxxxxxxxxxxxx (open list:HID LOGITECH DRIVERS) linux-kernel@xxxxxxxxxxxxxxx (open list) $ scripts/get_maintainer.pl drivers/hid/hid-logitech-dj.c "Filipe Laíns" <lains@xxxxxxxxxx> (reviewer:HID LOGITECH DRIVERS) Jiri Kosina <jikos@xxxxxxxxxx> (maintainer:HID CORE LAYER) Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx> (maintainer:HID CORE LAYER) linux-input@xxxxxxxxxxxxxxx (open list:HID LOGITECH DRIVERS) linux-kernel@xxxxxxxxxxxxxxx (open list) Then you can just git-send-mail to all the recipients listed there. Cheers, Filipe Laíns
Attachment:
signature.asc
Description: This is a digitally signed message part