Cursor does not move left/right using touchpad on 2.6.22-20080123.4 and newer master kernels

Denver Gingerich denver at
Sat May 3 18:25:19 EDT 2008

On Fri, May 2, 2008 at 10:42 PM, Denver Gingerich <denver at> wrote:
> On Thu, May 1, 2008 at 11:38 PM, Denver Gingerich <denver at> 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:


I attached the diff between those commits for
drivers/input/mouse/olpc.c.  There may be other files that were
changed so a proper git diff might be better to look at if you have a
tree handy.

I have narrowed down the problem as far as I can without compiling my
own kernel (there aren't any master kernels between 20080113.1 and
20080114.2 at  I currently
don't have the resources to setup my own build environment so if
someone would like to give me an account on a Fedora machine where I
can compile additional kernels for testing it would be much
appreciated.  Alternately you could send me kernel/module binaries to

I will take a look at the code and touchpad specs to try to further
narrow down the problem if I get some spare time.

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.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: mouse-olpc.f87-cb6.diff
Type: text/x-patch
Size: 11009 bytes
Desc: not available
URL: <>

More information about the Devel mailing list