Re: [GIT PULL] HID for 4.11

From: Andrew Duggan
Date: Tue Feb 28 2017 - 21:31:24 EST


On 02/28/2017 04:56 PM, Linus Torvalds wrote:
On Mon, Feb 20, 2017 at 8:37 PM, Linus Torvalds
<torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
Yeah, so enabling HID_RMI makes my touchpad work again.
.. so I just noticed something: it works subtly differently.

When I drag something around, I mostly just double-tap and move, and
that still works fine.

But sometimes I click (and hold) with one finger, and then move around
with another. That's occasionally very useful when you move longer
distances, because you can just raise and move that other finger
multiple times.

That doesn't seem to work with the RMI driver. I seem to get scroll
events instead.

I'm sure there's some setting for mouse gestures. But it's a bit odd
when they change just because the driver changes. And gnome certainly
doesn't believe in settings, because these things are obviously
"intuitive".

Ideas? Or am I just dreaming, and the click-and-move never worked?
Because I'm pretty sure it did, but sometimes the meds kick in.

Linus

The RMI driver does report input events a little differently then the hid-multitouch driver. It may report different min / max values for axis, different resolution values, and it also reports ABS_MT_PRESSURE. Also, depending on how the touchpad's firmware was configured it may also report additional fingers. It probably also reports a few other properties which hid-multitouch does not. Since it is the input handling libraries in userspace which interpret the input events and decide what is a drag and what is a scroll I suspect the issue may be in userspace. The additional properties reported by the input device may be causing the input handler to potentially misidentify the device and treat it differently. That's at least where I would start looking.

For what it's worth, I'm using libinput and the RMI driver on my touchpad. Click and drag works well with libinput's "ClickMethod" parameter set to "clickfinger".

Andrew