The Linux Input Driver project is a project that replace the current handling of keyboards, mice and joysticks in Linux. It's finally modular, and attempts to merge as much of architecture independent code as possible. For mice, keyboards, joysticks and other input devices it tries to create a simple, easy to program for and uniform API, with straightforward binding to XInput.
The project is progressing quite rapidly, already supporting all previously supported PC/x86 devices, and more. Support for other architectures is lagging a little, but that's going to be fixed soon.
Many of the drivers were improved significantly during the proces of rewriting them for the Input Driver project - for example serial MouseSystems mice have two times the refresh rate with the Input Drivers (48 updates/sec), which makes them finally comfortable to use, AT keyboards and PS/2 mice can be plugged in and out at runtime, without problems, analog joysticks have much better resolution (9-12 bits). No more problems with autorepeat on Toshiba laptops, because autorepeat is done by software. It will soon offer tighter integration with ALSA sound drivers for better gameport support. And more and more.
all details are here
http://www.linuxgames.com/joystick/