On Sun, May 25, 2008 at 12:13 AM, Denver Gingerich <[EMAIL PROTECTED]> wrote: > On Sat, May 3, 2008 at 6:25 PM, Denver Gingerich <[EMAIL PROTECTED]> wrote: >> On Fri, May 2, 2008 at 10:42 PM, Denver Gingerich <[EMAIL PROTECTED]> wrote: >>> >>> On Thu, May 1, 2008 at 11:38 PM, Denver Gingerich <[EMAIL PROTECTED]> wrote: >>> > On 2.6.22-20080123.4 and newer master kernels (specifically >>> > 2.6.22-20080123.4, 2.6.25-20080430.1, 2.6.25-20080501.2, and >>> > 2.6.25-20080501.3), the cursor cannot move from side to side with the >>> > touchpad, only up and down. Using a USB mouse works fine. >>> > >>> > Here is an example X session: >>> > 1. start X, cursor is in the center of the screen; touchpad has not >>> been touched >>> > 2. touch touchpad, cursor immediately jumps to the left side of the >>> screen >> >> See below for more details on Step 2. >> >>> > 3. move around on touchpad, cursor stays "stuck" to the left side of >>> > the screen, but moves up and down relative to how much vertical >>> > touchpad movement there is >>> > 4a. release finger from touchpad, cursor immediately jumps to the >>> > top-left corner of the screen (this may not be exactly the top-left >>> > corner, but it is always on the left-most column of pixels within the >>> > top 50-100 rows of pixels) >>> > 4b. move finger across right edge of touchpad, cursor moves very >>> > quickly from left to right across the screen (there appears to be a >>> > small area between the touchpad and the right third of the drawing pad >>> > where left to right motion is detected) >>> > >>> > Performing steps 2-4 consistently gives the same results within the >>> > same X session and across reboots. >> [...] >>> >>> The problem is present in 2.6.22-2008115.1 but not in >>> 2.6.22-20080113.1. >> >> The problem is also present in 2.6.22-20080114.2. So the problem is >> between the following commits: >> >> f8709785a433a5a3344304f9796fb26a65d69a1e >> cb6634de39d36cb9cc719c2940e456929ccceea2 > [...] >> Here are some additional details for Step 2 (touch touchpad): the >> vertical position that the cursor jumps to is correlated with the >> location on the touchpad that my finger is on. For example, if I >> touch the top part of the touchpad, the cursor will jump to the top >> part of the screen. So there is some absolute positioning going on. >> >> Additionally, a button press is registered when I touch the touchpad >> (even when I don't click the button) and a button release is >> registered when I take my finger off the touchpad. So moving my >> finger on the touchpad is essentially dragging whatever happens to be >> under the cursor. The button press is registered after the cursor >> jumps to its new position on the screen following my finger touching >> the touchpad. > > This issue is present in the 2.6.26-rc3 master kernel (not surprising > as mouse/olpc.c hasn't changed since 2.6.25). > > I now have access to a development environment so I should be able to > compile the intermediate commits (between f870978 and cb6634d) to > diagnose the problem further. I will report back when I have more > results.
By testing individual commits, I determined that the problem is introduced by the following commit: http://dev.laptop.org/git?p=olpc-2.6;a=commitdiff;h=cb6634de39d36cb9cc719c2940e456929ccceea2 I have attempted to narrow it down further to the line that caused the problem, but have been unsuccessful so far. I attempted two changes, starting from the cb6634d revision of the file. First, I added the following line back: gs->relbit[LONG(REL_X)] |= BIT(REL_X) | BIT(REL_Y); Then I removed the two instances of: input_set_abs_params(gs, ABS_PRESSURE, 0, ...); Both modifications gave the same result as the unchanged cb6634d commit. While I could try adding back each line and testing, that seems like a bit too much work. It would be nice if I could get some recommendations from a person who knows the code on what specific lines I should try changing. If you have any recommendations, please let me know. I may try some more changes based on my limited analysis of the code, but I would be much more likely to try things with recommendations (hint, hint :) ). Denver _______________________________________________ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel