NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/57874: pms(4) completely unusable after r. 1.76 change to synaptics.c
>Number: 57874
>Category: kern
>Synopsis: pms(4) completely unusable after r. 1.76 change to synaptics.c
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Jan 23 22:55:00 +0000 2024
>Originator: David H. Gutteridge
>Release: 10.0_RC3/i386
>Organization:
The NetBSD Foundation
>Environment:
>Description:
After r. 1.76 was committed to synaptics.c, this made my (yes, rather
old) trackpad and physical buttons completely unusable on an LG X110.
This is a regression in NetBSD 10.x vs. 9.3_STABLE.
Reverting part of the r. 1.76 change restores all basic functionality
(both physical buttons register clicks, trackpad registers single
finger movement), specifically, doing this:
RCS file: /cvsroot/src/sys/dev/pckbport/synaptics.c,v
retrieving revision 1.82
diff -u -r1.82 synaptics.c
--- synaptics.c 5 Sep 2023 05:55:12 -0000 1.82
+++ synaptics.c 23 Jan 2024 20:25:23 -0000
@@ -1420,6 +1420,7 @@
nsp.sp_z = psc->packet[2];
}
+#if 0
/*
* Check if the x and y are non-zero that they
* are within the bounds of the trackpad
@@ -1440,6 +1441,7 @@
nsp.sp_x, nsp.sp_y);
return;
}
+#endif
nsp.sp_finger_count = pms_synaptics_get_fingers(psc,
nsp.sp_w, nsp.sp_z);
There seems to be more than one issue involved here. Part of it seems
simply that the physical button clicks are getting caught in the
"check if x and y are non-zero" block and being discarded.
There is other strangeness/regression in that the bounds of the
trackpad are calculated completely differently in 9.3 vs. 10.0 RC3.
(A probably related PR in this regard is kern/57794, noting the same.)
It's not even possible to change them all back to the values in 9.3
using sysctl -w. That is, I can make a change to one of them, I will
get a response the change was made, and then it is immediately reset
by the driver back to its (wrong?) value. (This seems dependent on
which parameter. I am still looking at this.)
Dave
>How-To-Repeat:
As above.
>Fix:
Hack/workaround as above, disable that block of code.
Home |
Main Index |
Thread Index |
Old Index