Comment 45 for bug 990260

Revision history for this message
In , kernel-bugzilla.3.atliang (kernel-bugzilla.3.atliang-linux-kernel-bugs) wrote :

(In reply to comment #29)
> No. It`s don`t worked correctly.
> Edge srolling - not work.
> Jump zone - has come out less often, but sometimes it throws the cursor
> still.
> Two-finger scrolling - not work.

  Oops, I got it wrong. Please move the "abs_x = GET_ABS_X(packet);" and "abs_y = GET_ABS_Y(packet);" lines after the filter if statement. Something like:

case FSP_PKT_TYPE_ABS:
  if ((packet[0] == 0x48 || packet[0] == 0x49) &&
      packet[1] == 0 && packet[2] == 0) {
          /*
           * filtering out erratic movement which will cause
           * unexpected cursor jumping to top-left corner
           */
          packet[3] &= 0xf0;
  }
  abs_x = GET_ABS_X(packet);
  abs_y = GET_ABS_Y(packet);

  if (packet[0] & FSP_PB0_MFMC) {
    ...