Skip to contentSkip to conversation

Touchpad on Dell Latitude XT (alps 73 00 14)

DISCUSSION Rafi Rubin 2 participants 4 messages Jan 9, 2009 – Mar 3, 2009 HID

lore
Share & tools
lore

Rafi Rubin

author
#0 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

My touchpad has the id 73,00,14 which I added to alps.c as { { 0x73, 0x00, 0x14 }, 0xf8, 0xf8, 0 }

How can I determine what values to use for those last three fields?

Rafi
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkln4xcACgkQwuRiAT9o608/vQCfeBCfi72Q++3SfTABCOROxvCN ZHEAoKslCUY5ti7+rz9zQXqzP0Id+Jik
=stuZ
-----END PGP SIGNATURE-----

#1 lore raw

Hi Rafi,

Quoted 6 lines · Rafi Rubin

My touchpad has the id 73,00,14 which I added to alps.c as { { 0x73, 0x00, 0x14 }, 0xf8, 0xf8, 0 }

How can I determine what values to use for those last three fields?

f your touchpad works (you don't see any messages from psmouse in dmesg and every button works fine) then these are correct values.

Signature · 1 line
Dmitry
author
#2 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Quoted 12 lines · Dmitry Torokhov

Hi Rafi,

Quoted 5 lines · Rafi Rubin

My touchpad has the id 73,00,14 which I added to alps.c as { { 0x73, 0x00, 0x14 }, 0xf8, 0xf8, 0 }

How can I determine what values to use for those last three fields?

f your touchpad works (you don't see any messages from psmouse in dmesg and every button works fine) then these are correct values.

Its not working quite right. When I add the device and give it the "ALPS_DUALPOINT" flag (or 0), I get all the touchpad events working properly (through the synaptics driver in X). But the stick is sending weird coordinates through the mouse driver and extraneous clicks through the synaptics driver.

The ALPS_PASS flag just seems to send all the touchpad events to the mouse, and looses all stick events.

I'm not getting psmouse messages from the kernel when its in use. But then again, I'm not really using it all that much. The load time tests report:

alps.c: E6 report: 00 00 64
alps.c: E7 report: 73 00 14
alps.c: Status: 73 00 14

On a side note, seems to me the E6 test should print in decimal, or the comment saying the third value should be 10 or 100 should be changed to hex values.

Rafi
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAklrAqAACgkQwuRiAT9o6097XwCfa1nuSUXpIgdEsok7odNo+mp3 Z34An3cYWehx9KV0wx4WdYjanZQEgmoq
=ia7Z
-----END PGP SIGNATURE-----

author
#3 lore raw
In reply to Dmitry Torokhov
Quoted 7 lines
Quoted 4 lines

{ { 0x73, 0x00, 0x14 }, 0xf8, 0xf8, 0 }

How can I determine what values to use for those last three fields?

f your touchpad works (you don't see any messages from psmouse in dmesg and every button works fine) then these are correct values.

I took another look at it and would appreciate a little more advice.

First off, it seems that regardless of which flags I use (except for ALPS_PASS), the first byte is 0xff for all packets. So those masks don't seem to do anything useful for my device.

The touchpad does work fine. And with ALPS_DUALPOINT, packet[5] always comes out as 127. However those 4 bytes in the middle act a little weird. It looks to me like they are just rotating as if the packet size is incorrect.

[ 1325.709029] alps packet: ff 02 00 00 08 7f
[ 1325.722834] alps packet: ff 00 08 02 02 7f
[ 1325.737028] alps packet: ff 08 02 00 00 7f
[ 1325.760152] alps packet: ff 01 00 00 08 7f
[ 1325.773963] alps packet: ff 00 08 01 00 7f
[ 1325.824228] alps packet: ff 00 01 00 08 7f
[ 1325.838144] alps packet: ff 01 08 00 00 7f

Where do the first and last bytes come from? Are they being sent by the device, or added by a driver?

Any thoughts?

Rafi