[PORT to 2.6.x] "Disable Trackpad while typing" on Notebooks witha PS/2 Trackpad

From: Hans-Georg Thien
Date: Tue Sep 30 2003 - 15:53:20 EST


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

I have written a patch against the linux 2.4.x kernel and I want to port it to the 2.6.x Kernel now.

What it is
- ----------
The trackpad on the MacIntosh iBook notebooks have a feature that prevents unintended trackpad input while typing on the keyboard. There are no mouse-moves or mouse-taps for a short period of time after each keystroke.

I thougt that was a nice-to-have for my i386 notebook and have implemented it ( with some very important help of other people, namely Torsten Foertsch ).

This feature is fully configurable via a proc entry.

How it currently works
- ----------------------

In the 2.4.x kernel the handling of keyboard and PS/2 mouse where both done in linux/drivers/char/pc_keyb.c. So it was easy to apply a patch without touching other files.

It simply stores a timestamp whenever a key event occurs. If a mouse event occurs it compares the timestamp of the mouse event with stored timestamp of the key event. If the delta of these timestamps is less than a treshold value, than this mouse event is simply discarded. There where some things more to consider about, but I think you have the idea.

Where I need help now
- ---------------------
Since I do not want to touch the keyboard driver, I wonder if there is better way to get the timestamp when the last keyboard event occured?

Maybe a function call, a callback function where I can register to the be notified when a event occurs, a global accessible variable, a proc entry or something like that.

Any ideas ?

- - Hans

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (MingW32)

iD8DBQE/eezq2xSpXPjN/jsRAgyAAJ9djvaiYsgiR4pOf4GRJ2xNKCUa5QCdFreB
4/iOjaoS+3XX0dL8DFGEaJk=
=zh+9
-----END PGP SIGNATURE-----

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/