On Sat, 2018-06-02 at 14:14 +1000, Peter Hutterer wrote:
On 1/6/18 22:50 , Timur Kristóf wrote:
> On Thu, 2018-05-31 at 13:44 -0700, Laura Abbott wrote:
> > On 05/24/2018 04:13 PM, Timur Kristóf wrote:
> > > Hi,
> > >
> > > On the XPS 13 9360 and 9370 xinput sees two touchpads instead
> > > of
> > > one:
> > > ⎡ Virtual core pointer id=2 [master
> > > pointer (3)]
> > > ⎜ ↳ Virtual core XTEST
> > > pointer id=4 [slave pointer (2)]
> > > ⎜ ↳ DELL07E6:00 06CB:76AF
> > > Touchpad id=12 [slave pointer (2)]
> > > ⎜ ↳ SynPS/2 Synaptics
> > > TouchPad id=17 [slave pointer (2)]
> > >
> > > dmesg also gives me the following:
> > >
> > > [ 1.429811] psmouse serio1: synaptics: Your touchpad (PNP:
> > > DLL07e6
> > > PNP0f13) says it can support a different bus. If i2c-hid and
> > > hid-
> > > rmi
> > > are not used, you might want to try setting
> > > psmouse.synaptics_intertouch to 1 and report this to
> > > linux-input(a)vger.kernel.org.
> > >
> > > The Dell one is the real touchpad, the other one is an artifact
> > > of
> > > the
> > > psmouse driver. Weird touchpad freezes and jittering issues can
> > > be
> > > observed when both of these devices are there. The general
> > > advice
> > > on
> > > the web is to blacklist the psmouse driver. (This is also
> > > published
> > > by
> > > Dell as a .deb package which contains a config file doing just
> > > this.)
> > >
> > > However, on Fedora I cannot blacklist the psmouse driver
> > > because it
> > > is
> > > compiled built-in instead of as a module. Could you guys change
> > > the
> > > Fedora kernel config to compile it as a module instead?
> > >
> > > Thanks & best regards,
> > > Timur
> >
> > So assuming nobody else has objections, I think it's okay to at
> > least try this on rawhide and see if it uncovers any other
> > problems.
> >
> > Thanks,
> > Laura
> >
>
> Looking into this a bit more, the root cause of this issue is that
> the
> touchpad is wired up in such a way that it is accessible on both
> PS/2
> and I2C. I2C is preferred and used by i2c-hid but at the same time
> the
> PS/2 interface is also picked up by psmouse. Thus, Xorg sees the
> two
> interfaces as two different devices.
That is fairly standard and doesn't matter. This was also the case
for
earlier SMBus implementation but the common thing was that the PS/2
device never actually sent events. So it was only an issue for some
tools that expected only one touchpad to exist (e.g. synclient).
Check with evemu-record whether the device sends events. if not,
then
Xorg is definitely not confused by it. If it does and both event
nodes
send events then yes, we have a kernel bug there.
I've talked to Mario, a developer at Dell, and he pointed me to this
freedesktop bug report:
https://bugs.freedesktop.org/show_bug.cgi?id=101470
According to his description, there is actually no input coming from
PS/2 but it is still (wrongly) picked up by syndaemon. To be honest,
I'm not sure if Fedora uses syndaemon (I assume libinput is used for
everything now?), but I can tell that the touchpad does jitter when the
PS/2 device is there.
I can also confirm that evemu-record doesn't see any input coming from
the PS/2 device.
> Solution would be to somehow remove the psmouse-detected device
> node
> from the system when i2c-hid detects the same device. Is this
> possible?
This is more an upstream discussion, CC-ing benjamin for details.
I do recommend filing a bug with an evemu recording of a
freezing/jittering interaction. Lots of touchpad processing happens
in
userspace and this could be the cause of pressure thresholds set too
high. CC me on that bug and I can have a look. sudo libinput
debug-events --verbose will also show extra information including
things
when a touch ended based on its pressure information.
I can try to reproduce the problem and see if I can make an evemu
recording. What should I file the bug against (and where)?
Unfortunately I'm not familiar with the components involved.
Searching for libinput in the journal reveals a bunch of touch jump
messages, which seem to be related to the problem:
https://paste.fedoraproject.org/paste/MoZGqf25VpHjCLSYzTxdfw
Best regards,
Tim