linux/drivers/input
Adrian McMenamin 6b3480855a maple: input: fix up maple mouse driver
The maple mouse driver currently in mainline is broken:

bash-3.1# modprobe maplemouse
[   56.886378] input: Dreamcast Mouse as /devices/virtual/input/input3
[   56.918379] Unable to handle kernel NULL pointer dereference at virtual address 00000004
[   56.930543] pc = c003304e
[   56.934973] *pde = 00000000
[   56.944948] Oops: 0000 [#1]
[   56.947867] Modules linked in: maplemouse(+)
[   56.952353]
[   56.953921] Pid : 1157, Comm: \0x09\0x09modprobe
[   56.958021] CPU : 0        \0x09\0x09Not tainted  (2.6.30-rc2-00130-g3e98f9f #1)
[   56.958052]
[   56.966567] PC is at dc_mouse_open+0xe/0x40 [maplemouse]
[   56.972125] PR is at input_open_device+0x8a/0xc0
[   56.976944] PC  : c003304e SP  : 8c88bdcc SR  : 40008100 TEA : c0033834
[   56.983854] R0  : 000006c4 R1  : 00000000 R2  : 40008101 R3  : 00000000
[   56.990744] R4  : 8c8db800 R5  : c0033080 R6  : 00000005 R7  : 00000200
[   56.997635] R8  : 8c8db800 R9  : 8c8dbe3c R10 : 00000000 R11 : 8c98881c
[   57.004525] R12 : 8c8dbe64 R13 : 8ca50140 R14 : 8c88bdd4
[   57.010063] MACH: 00000497 MACL: 00000348 GBR : 29674440 PR  : 8c1b4d0a
[   57.016939]
...

Here is a fix for this, keeping an open and close, so reducing
the load on the system when the mouse is not in use, and also properly
referencing the maple device buffer following the recent update.

Signed-off-by: Adrian McMenamin <adrian@mcmen.demon.co.uk>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-27 09:22:31 +09:00
..
gameport Input: gameport - fix attach driver code 2009-04-15 08:58:19 -07:00
joystick
keyboard Merge branch 'next' into for-linus 2009-04-16 08:51:52 -07:00
misc Input: hp_sdc_rtc should depend on serio 2009-04-15 08:58:19 -07:00
mouse maple: input: fix up maple mouse driver 2009-04-27 09:22:31 +09:00
serio drivers/input/serio/hp_sdc.c: fix crash when removing hp_sdc module 2009-04-21 13:41:49 -07:00
tablet
touchscreen Merge branch 'next' into for-linus 2009-04-16 08:51:52 -07:00
apm-power.c
evbug.c
evdev.c
ff-core.c
ff-memless.c
fixp-arith.h
input-compat.c
input-compat.h
input-polldev.c
input.c Merge branch 'next' into for-linus 2009-04-16 08:51:52 -07:00
joydev.c
Kconfig
Makefile
mousedev.c
xen-kbdfront.c