CVS commit: [netbsd-9] src/sys/dev/pckbport

2020-06-20 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sat Jun 20 13:53:14 UTC 2020

Modified Files:
src/sys/dev/pckbport [netbsd-9]: synaptics.c

Log Message:
Pull up following revision(s) (requested by nia in ticket #954):

sys/dev/pckbport/synaptics.c: revision 1.67

synaptics: Don't reset the device multiple times in succession
Cherrypicked from a patch from an anonymous contributor.


To generate a diff of this commit:
cvs rdiff -u -r1.50.2.5 -r1.50.2.6 src/sys/dev/pckbport/synaptics.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pckbport/synaptics.c
diff -u src/sys/dev/pckbport/synaptics.c:1.50.2.5 src/sys/dev/pckbport/synaptics.c:1.50.2.6
--- src/sys/dev/pckbport/synaptics.c:1.50.2.5	Wed Apr 29 13:25:42 2020
+++ src/sys/dev/pckbport/synaptics.c	Sat Jun 20 13:53:14 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: synaptics.c,v 1.50.2.5 2020/04/29 13:25:42 martin Exp $	*/
+/*	$NetBSD: synaptics.c,v 1.50.2.6 2020/06/20 13:53:14 martin Exp $	*/
 
 /*
  * Copyright (c) 2005, Steve C. Woodford
@@ -48,7 +48,7 @@
 #include "opt_pms.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.5 2020/04/29 13:25:42 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.6 2020/06/20 13:53:14 martin Exp $");
 
 #include 
 #include 
@@ -1191,7 +1191,7 @@ pms_synaptics_input(void *vsc, int data)
 
 	getmicrouptime(>current);
 
-	if (psc->inputstate != 0) {
+	if (psc->inputstate > 0) {
 		timersub(>current, >last, );
 		if (diff.tv_sec > 0 || diff.tv_usec >= 4) {
 			aprint_debug_dev(psc->sc_dev,



CVS commit: [netbsd-9] src/sys/dev/pckbport

2020-04-29 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Wed Apr 29 13:25:42 UTC 2020

Modified Files:
src/sys/dev/pckbport [netbsd-9]: synaptics.c

Log Message:
Pull up following revision(s) (requested by jmcneill in ticket #865):

sys/dev/pckbport/synaptics.c: revision 1.66

pms_synaptics_enable: no need to send PMS_DEV_ENABLE here because
pms_enable does this for us. Seems to resolve issues with my trackpoint
not working immediately after starting X on ThinkPad X260.


To generate a diff of this commit:
cvs rdiff -u -r1.50.2.4 -r1.50.2.5 src/sys/dev/pckbport/synaptics.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pckbport/synaptics.c
diff -u src/sys/dev/pckbport/synaptics.c:1.50.2.4 src/sys/dev/pckbport/synaptics.c:1.50.2.5
--- src/sys/dev/pckbport/synaptics.c:1.50.2.4	Tue Apr 28 16:22:15 2020
+++ src/sys/dev/pckbport/synaptics.c	Wed Apr 29 13:25:42 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: synaptics.c,v 1.50.2.4 2020/04/28 16:22:15 martin Exp $	*/
+/*	$NetBSD: synaptics.c,v 1.50.2.5 2020/04/29 13:25:42 martin Exp $	*/
 
 /*
  * Copyright (c) 2005, Steve C. Woodford
@@ -48,7 +48,7 @@
 #include "opt_pms.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.4 2020/04/28 16:22:15 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.5 2020/04/29 13:25:42 martin Exp $");
 
 #include 
 #include 
@@ -484,8 +484,6 @@ pms_synaptics_enable(void *vsc)
 	(sc->flags & SYN_FLAG_HAS_ADV_GESTURE_MODE))
 		synaptics_special_write(psc, SYNAPTICS_WRITE_DELUXE_3, 0x3); 
 
-	synaptics_poll_cmd(psc, PMS_DEV_ENABLE, 0);
-
 	sc->up_down = 0;
 	sc->prev_fingers = 0;
 	sc->gesture_start_x = sc->gesture_start_y = 0;



CVS commit: [netbsd-9] src/sys/dev/pckbport

2020-04-28 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Tue Apr 28 16:22:15 UTC 2020

Modified Files:
src/sys/dev/pckbport [netbsd-9]: synaptics.c synapticsvar.h

Log Message:
Pull up following revision(s) (requested by jmcneill in ticket #863):

sys/dev/pckbport/synaptics.c: revision 1.65
sys/dev/pckbport/synapticsvar.h: revision 1.10

Extended buttons are reported separate from touchpad buttons, so track
button press / release state separate from touch events.


To generate a diff of this commit:
cvs rdiff -u -r1.50.2.3 -r1.50.2.4 src/sys/dev/pckbport/synaptics.c
cvs rdiff -u -r1.9 -r1.9.2.1 src/sys/dev/pckbport/synapticsvar.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pckbport/synaptics.c
diff -u src/sys/dev/pckbport/synaptics.c:1.50.2.3 src/sys/dev/pckbport/synaptics.c:1.50.2.4
--- src/sys/dev/pckbport/synaptics.c:1.50.2.3	Thu Apr  2 19:23:41 2020
+++ src/sys/dev/pckbport/synaptics.c	Tue Apr 28 16:22:15 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: synaptics.c,v 1.50.2.3 2020/04/02 19:23:41 martin Exp $	*/
+/*	$NetBSD: synaptics.c,v 1.50.2.4 2020/04/28 16:22:15 martin Exp $	*/
 
 /*
  * Copyright (c) 2005, Steve C. Woodford
@@ -48,7 +48,7 @@
 #include "opt_pms.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.3 2020/04/02 19:23:41 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.4 2020/04/28 16:22:15 martin Exp $");
 
 #include 
 #include 
@@ -1009,19 +1009,29 @@ pms_synaptics_parse(struct pms_softc *ps
 			psc->packet[3], psc->packet[4], psc->packet[5]);
 
 			if ((psc->packet[4] & SYN_1BUTMASK) != 0)
-sp.sp_left = PMS_LBUTMASK;
+sc->ext_left = PMS_LBUTMASK;
+			else
+sc->ext_left = 0;
 
 			if ((psc->packet[4] & SYN_3BUTMASK) != 0)
-sp.sp_middle = PMS_MBUTMASK;
+sc->ext_middle = PMS_MBUTMASK;
+			else
+sc->ext_middle = 0;
 
 			if ((psc->packet[5] & SYN_2BUTMASK) != 0)
-sp.sp_right = PMS_RBUTMASK;
+sc->ext_right = PMS_RBUTMASK;
+			else
+sc->ext_right = 0;
 
 			if ((psc->packet[5] & SYN_4BUTMASK) != 0)
-sp.sp_up = 1;
+sc->ext_up = 1;
+			else
+sc->ext_up = 0;
 
 			if ((psc->packet[4] & SYN_5BUTMASK) != 0)
-sp.sp_down = 1;
+sc->ext_down = 1;
+			else
+sc->ext_down = 0;
 		} else {
 			/* Left/Right button handling. */
 			sp.sp_left = psc->packet[0] & PMS_LBUTMASK;
@@ -1101,6 +,13 @@ pms_synaptics_parse(struct pms_softc *ps
 			sp.sp_middle = 0;
 		}
 
+		/* Overlay extended button state */
+		sp.sp_left |= sc->ext_left;
+		sp.sp_right |= sc->ext_right;
+		sp.sp_middle |= sc->ext_middle;
+		sp.sp_up |= sc->ext_up;
+		sp.sp_down |= sc->ext_down;
+
 		switch (synaptics_up_down_emul) {
 		case 1:
 			/* Do middle button emulation using up/down buttons */

Index: src/sys/dev/pckbport/synapticsvar.h
diff -u src/sys/dev/pckbport/synapticsvar.h:1.9 src/sys/dev/pckbport/synapticsvar.h:1.9.2.1
--- src/sys/dev/pckbport/synapticsvar.h:1.9	Sun Jun  2 08:55:00 2019
+++ src/sys/dev/pckbport/synapticsvar.h	Tue Apr 28 16:22:15 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: synapticsvar.h,v 1.9 2019/06/02 08:55:00 blymn Exp $	*/
+/*	$NetBSD: synapticsvar.h,v 1.9.2.1 2020/04/28 16:22:15 martin Exp $	*/
 
 /*
  * Copyright (c) 2005, Steve C. Woodford
@@ -89,6 +89,12 @@ struct synaptics_softc {
 	int	history_x[SYN_MAX_FINGERS][SYN_HIST_SIZE];
 	int	history_y[SYN_MAX_FINGERS][SYN_HIST_SIZE];
 	int	history_z[SYN_MAX_FINGERS][SYN_HIST_SIZE];
+
+	char	ext_left;
+	char	ext_right;
+	char	ext_middle;
+	char	ext_up;
+	char	ext_down;
 };
 
 int pms_synaptics_probe_init(void *vsc);



CVS commit: [netbsd-9] src/sys/dev/pckbport

2020-04-02 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Thu Apr  2 19:23:42 UTC 2020

Modified Files:
src/sys/dev/pckbport [netbsd-9]: synaptics.c

Log Message:
Pull up following revision(s) (requested by nia in ticket #818):

sys/dev/pckbport/synaptics.c: revision 1.64

synaptics: Maintain the left/right buttons when up/down are remapped
Reported on current-users by Mandacar� Cascavel


To generate a diff of this commit:
cvs rdiff -u -r1.50.2.2 -r1.50.2.3 src/sys/dev/pckbport/synaptics.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pckbport/synaptics.c
diff -u src/sys/dev/pckbport/synaptics.c:1.50.2.2 src/sys/dev/pckbport/synaptics.c:1.50.2.3
--- src/sys/dev/pckbport/synaptics.c:1.50.2.2	Mon Mar 30 18:47:33 2020
+++ src/sys/dev/pckbport/synaptics.c	Thu Apr  2 19:23:41 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: synaptics.c,v 1.50.2.2 2020/03/30 18:47:33 martin Exp $	*/
+/*	$NetBSD: synaptics.c,v 1.50.2.3 2020/04/02 19:23:41 martin Exp $	*/
 
 /*
  * Copyright (c) 2005, Steve C. Woodford
@@ -48,7 +48,7 @@
 #include "opt_pms.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.2 2020/03/30 18:47:33 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.3 2020/04/02 19:23:41 martin Exp $");
 
 #include 
 #include 
@@ -1109,8 +1109,8 @@ pms_synaptics_parse(struct pms_softc *ps
 			break;
 		case 3:
 			/* Do left/right button emulation using up/down buttons */
-			sp.sp_left = sp.sp_up;
-			sp.sp_right = sp.sp_down;
+			sp.sp_left = sp.sp_left | sp.sp_up;
+			sp.sp_right = sp.sp_right | sp.sp_down;
 			sp.sp_up = sp.sp_down = 0;
 			break;
 		default:



CVS commit: [netbsd-9] src/sys/dev/pckbport

2020-03-30 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Mon Mar 30 18:47:33 UTC 2020

Modified Files:
src/sys/dev/pckbport [netbsd-9]: synaptics.c

Log Message:
Pull up following revision(s) (requested by nia in ticket #810):

sys/dev/pckbport/synaptics.c: revision 1.57
sys/dev/pckbport/synaptics.c: revision 1.58

synaptics: Allow the max_speed sysctls to be set
synaptics: fix syntax


To generate a diff of this commit:
cvs rdiff -u -r1.50.2.1 -r1.50.2.2 src/sys/dev/pckbport/synaptics.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pckbport/synaptics.c
diff -u src/sys/dev/pckbport/synaptics.c:1.50.2.1 src/sys/dev/pckbport/synaptics.c:1.50.2.2
--- src/sys/dev/pckbport/synaptics.c:1.50.2.1	Mon Mar 30 18:45:16 2020
+++ src/sys/dev/pckbport/synaptics.c	Mon Mar 30 18:47:33 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: synaptics.c,v 1.50.2.1 2020/03/30 18:45:16 martin Exp $	*/
+/*	$NetBSD: synaptics.c,v 1.50.2.2 2020/03/30 18:47:33 martin Exp $	*/
 
 /*
  * Copyright (c) 2005, Steve C. Woodford
@@ -48,7 +48,7 @@
 #include "opt_pms.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.1 2020/03/30 18:45:16 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: synaptics.c,v 1.50.2.2 2020/03/30 18:47:33 martin Exp $");
 
 #include 
 #include 
@@ -862,7 +862,10 @@ pms_sysctl_synaptics_verify(SYSCTLFN_ARG
 	} else
 	if (node.sysctl_num == synaptics_gesture_length_nodenum ||
 	node.sysctl_num == synaptics_edge_motion_delta_nodenum ||
-	node.sysctl_num == synaptics_up_down_motion_delta_nodenum) {
+	node.sysctl_num == synaptics_up_down_motion_delta_nodenum ||
+	node.sysctl_num == synaptics_max_speed_x_nodenum ||
+	node.sysctl_num == synaptics_max_speed_y_nodenum ||
+	node.sysctl_num == synaptics_max_speed_z_nodenum) {
 		if (t < 0)
 			return (EINVAL);
 	} else