Re: psm(4) - synaptics touch pad strange behavier

From: David Horn <dhorn2000_at_gmail.com>
Date: Sun, 26 Sep 2010 16:52:49 -0400
On Sun, Sep 26, 2010 at 11:44 AM, Norikatsu Shigemura <nork_at_freebsd.org> wrote:
>
> Hi psm(4) masters!
>
>        I have trouble using Synaptics TouchPad, psm(4) on my CF-R9.
>        The trouble is that the mouse cursor moves at random, and the
>        mouse button is clicked without button action.  I heard same
>        trouble from ume_at_'s CF-R8.
>
>        So I enabled options PSM_DEBUG=5 and traced psm's packets.
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>  :
> FreeBSD 9.0-CURRENT #39: Sun Sep 26 22:07:37 JST 2010
>    nork_at_pelsia.ninth-nine.com:/usr/obj/usr/src/sys/PELSIA amd64
>  :
> atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
> atkbd0: <AT Keyboard> irq 1 on atkbdc0
> atkbd: the current kbd controller command byte 0065
> atkbd: keyboard ID 0x41ab (2)
> kbd0 at atkbd0
> kbd0: atkbd0, AT 101/102 (2), config:0x0, flags:0x3d0000
> ioapic0: routing intpin 1 (ISA IRQ 1) to lapic 0 vector 67
> atkbd0: [GIANT-LOCKED]
> psm0: unable to allocate IRQ
> psmcpnp0: <PS/2 mouse port> irq 12 on acpi0
> psm0: current command byte:0065
> Synaptics Touchpad v6.2
>  Model information:
>   infoRot180: 0
>   infoPortrait: 0
>   infoSensor: 57
>   infoHardware: 80
>   infoNewAbs: 1
>   capPen: 0
>   infoSimplC: 1
>   infoGeometry: 2
>  Extended capabilities:
>   capExtended: 1
>   capPassthrough: 0
>   capSleep: 1
>   capFourButtons: 0
>   capMultiFinger: 0
>   capPalmDetect: 1
>  Additional Buttons: 0
> psm0: found Synaptics Touchpad
> psm0: <PS/2 Mouse> flags 0x3000 irq 12 on atkbdc0
> ioapic0: routing intpin 12 (ISA IRQ 12) to lapic 0 vector 68
> psm0: [GIANT-LOCKED]
> psm0: model Synaptics Touchpad, device ID 0-00, 3 buttons
> psm0: config:00007000, flags:00000008, packet size:6
> psm0: syncmask:c0, syncbits:00
>  :
> atkbdc: atkbdc0 already exists; skipping it
>  :
<snipped for brevity>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
>        I read Synaptics's "Synaptics PS/2 TouchPad Interfacing Guide",
>        PN: 511-000275-01 Rev.A and sys/dev/atkbdc/psm.c.  Accordingly
>        these, I think no problem about implementing synaptics processing
>        part, maybe.
>
>        But read_aux_data_no_wait is really OK?  Accordingly, my dumped
>        data pointed out 'not synaptics data.'.  Some initialization is
>        required?  I didn't know what.
>
> psmintr() in sys/dev/atkbdc/psm.c
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>        while((c = read_aux_data_no_wait(sc->kbdc)) != -1) {
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
>        To fix this issue, should I do other?
>

I have not looked at this code in a while, but I seem to remember
having some problems when attempting to use the Synaptics extended
support in psm(4).   I'm not certain if you are running with or
without the loader tunable enabled for extended and/or a custom
device.hints.  Snippet from psm(4) man page

LOADER TUNABLES
     Extended support for Synaptics touchpads can be enabled by setting
     hw.psm.synaptics_support to 1 at boot-time.  This will enable psm to han-
     dle packets from guest devices (sticks) and extra buttons.

     Tap and drag gestures can be disabled by setting hw.psm.tap_enabled to 0
     at boot-time.  Currently, this is only supported on Synaptics touchpads
     with Extended support disabled. The behaviour may be changed after boot
     by setting the sysctl with the same name and by restarting moused(8)
     using /etc/rc.d/moused.

There is also some additional documentation for the extended support
here: http://wiki.freebsd.org/SynapticsTouchpad

The last I looked, I was successfully using synaptics touchpad with
the loader tunables hw.psm.synaptics_support set to 0, and
hw.psm.tap_enabled set to 0 (at least on my Dell 1520), so that the
touchpad would just work like a normal mouse.  I seem to remember a
few pr's (84411) against psm synaptics support for your issue as well
(including a potential patch), but best to check with some recent
deveopers in this area. (Perhaps philip_at_ and/or dumbbell_at_ could chime
in ?)

Good Luck.

-_Dave
Received on Sun Sep 26 2010 - 19:23:42 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:07 UTC