[gpm]Additional Synaptics patch against 1.20.1rc1

Ben Pfaff blp@cs.stanford.edu
09 Aug 2002 16:36:01 -0700


Peter Berg Larsen <pebl@math.ku.dk> writes:

> On 8 Aug 2002, Ben Pfaff wrote:
> 
> > > > I just got a new IBM ThinkPad T30, which has an "UltraNav"
> > > > Synaptics-based touchpad/pointing stick mouse device on it. 
> > > 
> > > Could you give the touchpad info printed in the start? 
> > 
> > Is this what you're looking for?
> 
> Yes partly, I would also like to see the line >>Synaptics Touchpad
> Capabilities: xx<<. 

Here it is:

*** info [synaptics.c(888)]: Synaptics Touchpad Capabilities: 8893

> Is UltraNav the official name for your touchpad? (I will add it
> then).

Yes, that is the name used in IBM documentation, marketing
materials, press releases, etc.  I don't know whether there's a
code name for it as well.

> > Without the patch, the buttons do not work properly, so I suppose
> > that it is needed all of the time.
> 
> But do they not work all the time or do they not work sometimes (without
> exactly the quoted lines)? 

Without the patch, the buttons do not do anything when pressed,
besides causing gpm to log data.

> What I am trying to find out is whether this is a new type of extended
> packets or not (and how to detect the difference if any).
> 
> Without the patch could you sent the warnings of >>Synps2: Pressure is 0,
> but x or y is not 0. ...<< and the data and also
> >>Stickdata? ...<<. (when pressing each button, using the stick and a
> combination of moving the stick with a button pressed?)

Left button press and release (bit 0 toggles in second byte of StickData):

*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 09 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 09 00 c4 00 00 :dx:0 dy:0 b:0
*** debug [gpm.c(887)]: Screen size: 175 - 65
*** debug [gpm.c(904)]: x 10, y 16
*** debug [gpm.c(619)]: M:   0   0 ( 87  32) - butt=0 vc=2 cl=0
*** debug [gpm.c(210)]: ctl 0, mode 3
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 80 00 00 (c0)
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 08 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 08 00 c4 00 00 :dx:0 dy:0 b:0
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 80 00 00 (c0)

Middle button press and release (bit 2 toggles in second byte of StickData):

*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 0c 00 (c4)
*** err [synaptics.c(1181)]: Synps2: Pressure is 0, but x or y is not 0. Data: 84 0C 00 C4 00 00
*** debug [gpm.c(619)]: M:   0   0 ( 87  32) - butt=0 vc=2 cl=0
*** debug [gpm.c(210)]: ctl 0, mode 3
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 80 00 00 (c0)
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 08 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 08 00 c4 00 00 :dx:0 dy:0 b:0
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 80 00 00 (c0)

Right button press and release (bit 1 toggles in second byte of StickData):

*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 0a 00 (c4)
*** err [synaptics.c(1181)]: Synps2: Pressure is 0, but x or y is not 0. Data: 84 0A 00 C4 00 00
*** debug [gpm.c(619)]: M:   0   0 ( 87  32) - butt=0 vc=2 cl=0
*** debug [gpm.c(210)]: ctl 0, mode 3
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 80 00 00 (c0)
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 08 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 08 00 c4 00 00 :dx:0 dy:0 b:0
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 80 00 00 (c0)

Press and hold left button, nudge the stick, release left button:

*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 09 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 09 00 c4 00 00 :dx:0 dy:0 b:0
*** debug [gpm.c(887)]: Screen size: 175 - 65
*** debug [gpm.c(904)]: x 10, y 16
*** debug [gpm.c(619)]: M:   0   0 ( 87  32) - butt=0 vc=2 cl=0
*** debug [gpm.c(210)]: ctl 0, mode 3
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 80 00 00 (c0)
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 19 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 19 00 c4 fe 02 :dx:-2 dy:-2 b:0
*** debug [gpm.c(619)]: M:   0   0 ( 87  32) - butt=0 vc=2 cl=0
*** debug [gpm.c(210)]: ctl 0, mode 3
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 19 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 19 00 c4 ff 01 :dx:-1 dy:-1 b:0
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 90 a2 01 (d4)
*** debug [synaptics.c(806)]: Synps2: Last report reported 1 times
*** debug [synaptics.c(812)]: Synps2: -----  4688x2783   1  5 0  ----  --      0  0 0           0        0  
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 09 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 09 00 c4 00 01 :dx:0 dy:-1 b:0
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 29 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 29 00 c4 00 ff :dx:0 dy:1 b:0
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 90 b2 01 (d4)
*** debug [synaptics.c(812)]: Synps2: -----  4677x2829   1  5 0  ----  --      0  0 0           0        0  
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 84 08 00 (c4)
*** debug [synaptics.c(1128)]: StickData? 84 08 00 c4 00 00 :dx:0 dy:0 b:0
*** debug [gpm.c(1043)]: selected 1 times
*** debug [gpm.c(386)]: Data 80 00 00 (c0)
*** debug [synaptics.c(812)]: Synps2: -----     0x0      0  0 0  l-b-  --      0  0 0           0        0  

Let me know if there's anything else I can do.
-- 
"Note that nobody reads every post in linux-kernel.   In fact, nobody who
 expects to have time left over to  actually do any real kernel work will
 read even half.  Except Alan Cox, but he's actually not human, but about
 a thousand gnomes working in under-ground caves in Swansea." --Linus