OK, from scratch. These three patches, applied in sequence should fix most of the problem, including the locked mouse buttons chaos.
--- They don't fix --- the three-button combo of death (e.g. press three buttons and move the touchpad). I've been thinking about it and there just seems no way to deal with this in a sane way (see below) without requiring lookahead on the seventh byte. This would mean the driver locks up when is receives a six-byte packet while alle the buttons are pressed and would only unfreeze after the seventh byte comes in and clears up the situation. There is nothing in the first byte, it's 0xCF always. The second byte is purely motion data, and required in full for that The third byte has one unused bit -- which is always zero for me -- and the ges/fin bits, which occur in all combinations in 6-byte packets. I've not analyzed 9-bytes thoroughly because it's difficult to move touchpad and stick while tapping. Still, this is an unlikely spot. The fourth byte is actually different for the two types of packet. The lower nibble contains the mouse buttons or 1111, leading to the now well-kown problem. The upper nibble contains either PS/2 passthrough bits or coordinates data. Byte five is motion data again. Byte six is the last resort. Maybe the hw doesn't use the whole dynamic range of Z for the pressure. ** Attachment added: "initial fix" http://launchpadlibrarian.net/35682502/0001-initial-fix.patch -- ALPS DualPoint Touchpad flaky performance https://bugs.launchpad.net/bugs/296610 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs