Re: [PATCH] Revert "Input: trackpoint - add new trackpoint firmware ID"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Sebastian,

On Mon, Jan 08, 2018 at 04:11:01PM +0100, Sebastian Schmidt wrote:
> Hi Dmitry,
> 
> On Sat, Jan 06, 2018 at 10:52:01PM -0800, Dmitry Torokhov wrote:
> > Guys, could you please try the patch below? It will not solve the
> > "speed" issue on 0x01 devices, but hopefully we won't be exposing
> > non-existing controls on others.
> 
> Thanks for looking into this. Which speed issue on 0x01 devices? I
> thought those were the legacy ones that used to work and still do as
> ever.
> 
> I've tried your (slightly modified, see below) patch and the trackpoint
> now gets apparently[1] correctly detected as "psmouse serio2:
> trackpoint: Elan TrackPoint firmware: 0x04, buttons: 3/3". However, I
> still have the feeling that it's a lot more sensitive (or faster?) than
> with the regular PS/2 driver - even with libinput accel speed turned to
> -1. I don't know how I could measure this objectively, but there must be
> some difference between the trackpoint driver and the regular one. Is it
> maybe an init sequence that causes it to report more sensitively, or a
> different resolution, or ...? I really have no idea how mice work. :)

Hmm.. Can you try writing different values to "sensitivity" attribute
and let me know if this changes behavior. Try 0x66, 0x73, 0x80, 0x8F,
0xA0, 0xB3, 0xC9, 0xE1, 0xFC values (smaller should be less sensitive).
I believe we try to program it to 0x80 by default.

Also, I think libinput/udev is trying to "normalize" trackstick feel,
see /lib/udev/hwdb.d/70-pointingstick.hwdb I am adding Peter Hutterer to
see if he has any more info.

> 
> Also, I'm wondering, since my trackpoint works just fine as "Generic
> PS/2 Mouse", including the third button. The driver even says:
> | /*
> |  * Bare PS/2 protocol "detection". Always succeeds.
> |  */
> | static int ps2bare_detect(struct psmouse *psmouse, bool set_properties)
> | {
> | [...]
> |         /*
> |          * We have no way of figuring true number of buttons so let's
> |          * assume that the device has 3.
> |          */
> |         __set_bit(BTN_MIDDLE, psmouse->dev->keybit);
> |     }
> | 
> |     return 0;
> | }
> 
> So I wonder what driver Aaron was using that didn't report a third
> button. What vendor/firmwares did you (get reports of) have that middle
> mouse button problem on, Aaron?

No, the functionality Aaron is after is scrolling with the trackpoint -
if you hold middle button and press onto the trackpoint upwards or
downwards it should scroll window content.

> 
> Thanks,
> 
> Sebastian
> 
> 
> 1: If it's actually Elan. I've taken out my battery but could only
> find FRU numbers on the back of the keyboard, no signs of a vendor.
> <https://photos.app.goo.gl/iafpfzvRY042dOBo2> or
> <https://t.yath.de/IMG_20180108_143205.jpg>
> 
> In trackpoint_start_protocol:
> > +   switch (param[0]) {
> > +   case TP_VARIANT_IBM:
> > +   case TP_VARIANT_ALPS:
> > +   case TP_VARIANT_ELAN:
> > +   case TP_VARIANT_NXP:
> > +       if (variant_id)
> > +           *variant_id = param[0];
> > +       if (firmware_id)
> > +           *firmware_id = param[1];
> > +       break;
>           ^^^^^
>           That should be a return 0.

Yes, indeed.

> > +   }
> > 
> > -   return 0;
> > +   return -ENODEV;
> >  }

-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux