Date: Sun, 26 Sep 2010 16:52:49 -0400 From: David Horn <dhorn2000@gmail.com> To: Norikatsu Shigemura <nork@freebsd.org> Cc: freebsd-current@freebsd.org Subject: Re: psm(4) - synaptics touch pad strange behavier Message-ID: <AANLkTikkyHC8aFm%2BY6XJdgzL_bNpCtu4_4-HJOkSjaSX@mail.gmail.com> In-Reply-To: <20100927004436.997b82d7.nork@FreeBSD.org> References: <20100927004436.997b82d7.nork@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Sep 26, 2010 at 11:44 AM, Norikatsu Shigemura <nork@freebsd.org> wr= ote: > > Hi psm(4) masters! > > =A0 =A0 =A0 =A0I have trouble using Synaptics TouchPad, psm(4) on my CF-R= 9. > =A0 =A0 =A0 =A0The trouble is that the mouse cursor moves at random, and = the > =A0 =A0 =A0 =A0mouse button is clicked without button action. =A0I heard = same > =A0 =A0 =A0 =A0trouble from ume@'s CF-R8. > > =A0 =A0 =A0 =A0So I enabled options PSM_DEBUG=3D5 and traced psm's packet= s. > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= - - - - - > =A0: > FreeBSD 9.0-CURRENT #39: Sun Sep 26 22:07:37 JST 2010 > =A0 =A0nork@pelsia.ninth-nine.com:/usr/obj/usr/src/sys/PELSIA amd64 > =A0: > 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 > =A0Model information: > =A0 infoRot180: 0 > =A0 infoPortrait: 0 > =A0 infoSensor: 57 > =A0 infoHardware: 80 > =A0 infoNewAbs: 1 > =A0 capPen: 0 > =A0 infoSimplC: 1 > =A0 infoGeometry: 2 > =A0Extended capabilities: > =A0 capExtended: 1 > =A0 capPassthrough: 0 > =A0 capSleep: 1 > =A0 capFourButtons: 0 > =A0 capMultiFinger: 0 > =A0 capPalmDetect: 1 > =A0Additional 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 > =A0: > atkbdc: atkbdc0 already exists; skipping it > =A0: <snipped for brevity> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= - - - - - > > =A0 =A0 =A0 =A0I read Synaptics's "Synaptics PS/2 TouchPad Interfacing Gu= ide", > =A0 =A0 =A0 =A0PN: 511-000275-01 Rev.A and sys/dev/atkbdc/psm.c. =A0Accor= dingly > =A0 =A0 =A0 =A0these, I think no problem about implementing synaptics pro= cessing > =A0 =A0 =A0 =A0part, maybe. > > =A0 =A0 =A0 =A0But read_aux_data_no_wait is really OK? =A0Accordingly, my= dumped > =A0 =A0 =A0 =A0data pointed out 'not synaptics data.'. =A0Some initializa= tion is > =A0 =A0 =A0 =A0required? =A0I didn't know what. > > psmintr() in sys/dev/atkbdc/psm.c > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= - - - - - > =A0 =A0 =A0 =A0while((c =3D read_aux_data_no_wait(sc->kbdc)) !=3D -1) { > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= - - - - - > > =A0 =A0 =A0 =A0To 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).=A0=A0 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 h= an- 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 touchpad= s with Extended support disabled. The behaviour may be changed after boo= t 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@ and/or dumbbell@ could chime in ?) Good Luck. -_Dave
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTikkyHC8aFm%2BY6XJdgzL_bNpCtu4_4-HJOkSjaSX>